javascript - 为什么创建buffer时需要为其分配内存呢?

标签 javascript node.js buffer

Javascript是一种动态语言,为什么在创建缓冲区时必须指定缓冲区的大小?

var buffer = new Buffer(10);

最佳答案

我认为 Buffer 实例很可能使用 typed arrays在幕后提高效率,甚至是低级数组(因为 Buffer 是 Node 的 native 部分,它是用 C++ 编写的,而不是 JavaScript)。确实,看看 node_buffer.cc ,看来确实如此。类型化数组或低级数组是固定大小、创建时分配的结构。

<小时/>

旁注:new Buffer(size) 已弃用;使用Buffer.alloc相反。

关于javascript - 为什么创建buffer时需要为其分配内存呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46215943/

相关文章:

javascript - 使用 Javascript/D3JS/JQuery 永久更改 CSS 属性

javascript - Observable 未接收 angular2 中的下一个值

node.js - 为什么 React 应用程序不会太大、组件太多?人们如何降低这种风险?

node.js - Node 5.10 扩展运算符不工作

c# - 当行的字节位置已知时,从 C# 中的文件中删除一行文本

javascript - 加载前检查图片是否存在

javascript - 如何从 Jain 数据 js 脚本中的 python 访问变量?

javascript - 当使用 PUT 方法主体时,不使用 Koa 传递

windows - Emacs,切换特定窗口

c - 用户空间缓冲区和内核缓冲区