首页 > 其他 > 详细

buf.writeIntBE()函数详解

时间:2018-11-05 13:56:12      阅读:195      评论:0      收藏:0      [点我收藏+]

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()函数详解

原文:https://www.cnblogs.com/lalalagq/p/9908712.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!