关于Buffer中readFloatBE的疑惑
在nodejs官网Buffer API中使用函数buf.readFloatBE(offset)的时候产生了一些困惑。困惑点是在于根据官网下面的例子,如下
const buf = Buffer.from([1, 2, 3, 4]);
console.log(buf.readFloatBE(0));
// Prints: 2.387939260590663e-38
console.log(buf.readFloatLE(0));
// Prints: 1.539989614439558e-36
相比于buf.readFloatBE,buf.readInt32BE类似于这样的函数的计算还是比较好理解的,请问这两者之间有什么区别吗?
1 回复
没看出你的疑惑在哪 = =,这两个API我没用过,但文档看起来是为了让程序员选择符合自己环境的大小端方法
4bytes的buffer:[0x00, 0x00, 0x00,0x01],用BE读出来是0x00 0x00 0x00 0x01
,而用LE对读出来则是0x01 0x00 0x00 0x00
,接着你不管是把它转int还是float,值都是有区别的