为什么说Buffer 对象的内存是被解析为一个明确元素的数组,而不是一个目标类型的字节数组?
发布于 7 年前 作者 JeffWong16 3097 次浏览 来自 问答

在看Node buffer文档的时候,对一个概念不是很理解。什么是明确元素的数组,什么是目标类型的字节数组?

Buffer 对象的内存是被解析为一个明确元素的数组,而不是一个目标类型的字节数组。 也就是说,new Uint32Array(Buffer.from([1, 2, 3, 4])) 会创建一个包含 [1, 2, 3, 4] 四个元素的 Uint32Array,而不是一个只包含一个元素 [0x1020304] 或 [0x4030201] 的 Uint32Array 。 英文原文: The Buffer object’s memory is interpreted as an array of distinct elements, and not as a byte array of the target type. That is, new Uint32Array(Buffer.from([1, 2, 3, 4])) creates a 4-element Uint32Array with elements [1, 2, 3, 4], not a Uint32Array with a single element [0x1020304] or [0x4030201].

原问题地址:https://segmentfault.com/q/1010000011892940

1 回复

node的Buffer类型是ES6 ArrayBuffer中 Uint8Array的实现

回到顶部