buf.writeDoubleBE()函数详解
buf.writeDoubleBE(value, offset[, noAssert])
buf.writeDoubleLE(value, offset[, noAssert])
- value {Number} 需要被写入到 Buffer 的字节+
- offset {Number} 0 <= offset <= buf.length - 8
- noAssert {Boolean} 默认:false
- 返回:{Number} 偏移加上被写入的字节数
从该 Buffer 指定的带有特定尾数格式(writeDoubleBE() 写入一个较大的尾数,writeDoubleLE() 写入一个较小的尾数)的 offset 位置开始写入 value 。value 参数应当是一个有效的64位双精度值。当值不是一个64位双精度值时,它的行为是不确定的。
将 noAssert 设为 true 将跳过对 value 和 offset 的验证。这意味着 value 可能对于这个特定的函数来说过大,并且 offset 可能超出该 Buffer 的末端,导致该值被直接丢弃。除非确定你的内容的正确性否则不应该被使用。
例子:
const buf = Buffer.allocUnsafe(8);
-
buf.writeDoubleBE(0xdeadbeefcafebabe, 0);
-
console.log(buf);
-
// Prints: <Buffer 43 eb d5 b7 dd f9 5f d7>
-
buf.writeDoubleLE(0xdeadbeefcafebabe, 0);
-
console.log(buf);
-
// Prints: <Buffer d7 5f f9 dd b7 d5 eb 43>