【发布时间】:2018-04-25 15:06:35
【问题描述】:
谁能解释一下,为什么 DataView 使用字节顺序Big Endian?虽然我们的计算机正在使用Little Endian。还有ARM处理器。
像Uint32Array() 这样的类型化数组已经使用Little Endian。我认为这是正确的。
// DataView (Big Endian)
const dataview = new DataView(new ArrayBuffer(4));
dataview.setUint32(0, 42);
console.log(new Uint8Array(dataview.buffer).toString());
// result: 0,0,0,42
// Typed Array (Little Endian)
const typearray = new Uint32Array([42]);
console.log(new Uint8Array(typearray.buffer).toString());
// result: 42,0,0,0
我希望数字类型使用小端序。这是不一致的。
我知道 litleEndian 的 DataView 方法的可选参数。
但我的问题是:为什么默认不设置这个?
【问题讨论】:
标签: javascript endianness