buf.writeIntBE()函数详解
Posted lalalagq
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了buf.writeIntBE()函数详解相关的知识,希望对你有一定的参考价值。
buf.writeIntBE(value, offset, byteLength[, noAssert])
buf.writeIntLE(value, offset, byteLength[, noAssert])
- value {Number} 需要被写入到 Buffer 的字节
- offset {Number} 0 <= offset <= buf.length - byteLength
- byteLength {Number} 默认:0 < byteLength <= 6+
- noAssert {Boolean} 默认:false
- 返回:{Number} 偏移加上被写入的字节数
通过指定的 offset 和 byteLength 将 value 写入到当前 Buffer 中。支持多达 48 位的精度。例如:
const buf1 = Buffer.allocUnsafe(6);
buf1.writeUIntBE(0x1234567890ab, 0, 6);
console.log(buf1);
// Prints: <Buffer 12 34 56 78 90 ab>
const buf2 = Buffer.allocUnsafe(6);
buf2.writeUIntLE(0x1234567890ab, 0, 6);
console.log(buf2);
// Prints: <Buffer ab 90 78 56 34 12>
将 noAssert 设为 true 将跳过对 value 和 offset 的验证。这意味着 value 可能对于这个特定的函数来说过大,并且 offset 可能超出该 Buffer 的末端,导致该值被直接丢弃。除非确定你的内容的正确性否则不应该被使用。
当值不是一个整数时,它的行为是不确定的。
以上是关于buf.writeIntBE()函数详解的主要内容,如果未能解决你的问题,请参考以下文章
14.VisualVM使用详解15.VisualVM堆查看器使用的内存不足19.class文件--文件结构--魔数20.文件结构--常量池21.文件结构访问标志(2个字节)22.类加载机制概(代码片段