问题描述
我正在寻找一种允许我在JavaScript中操纵可增长字节缓冲区的类型;本质上,等效于Python bytearray
类型。我的解决方案标准是缓冲区应为:
- 可增长:缓冲区必须支持调整大小;因此,
ArrayBuffer
/Uint8Array
(至少靠它们自己)将不会起作用。 - 高效:我应该有合理的期望,即使在(相对)简单的引擎中,使用缓冲区也不会产生不合理的开销。因此,数字
Array
无效。 - 便携式:这需要在浏览器中运行,因此没有特定于node.js的内容;尽管理想的解决方案仅直接依赖于ECMA和WHATWG标准中指定的API。
是否存在满足这些条件的8位字节缓冲区类型?
解决方法
有一个 ResizableArrayBuffer 规范正在开发中。在撰写本文时,它处于第 2 阶段,因此没有主要实现。目前,Array
必须要做。