Buffer.readUInt16LE()方法是Buffer模块中Buffer类的内置应用程序编程接口,用于以指定的偏移量以指定的little endian格式从缓冲区读取无符号的16位整数。
用法:
Buffer.readUInt16LE( offset )
参数:此方法接受单个参数偏移量,该参数偏移量表示开始从缓冲区读取之前要跳过的字节数。偏移量可以在0范围内
返回值:它以Little Endian格式从指定的偏移量返回一个整数。
以下示例说明了Node.js中Buffer.readUInt16LE()方法的使用:
范例1:
// Node.js program to demonstrate the
// Buffer.readUInt16LE() method
// Creating a buffer
const buf = Buffer.from([0x7, 0x0,
0x1, 0x1, 0x4, 0x5, 0x4, 0x6]);
// Using Buffer.readUInt16LE() method
console.log(buf.readUInt16BE(0).toString(16));
// Using Buffer.readUInt16LE() method
console.log(buf.readUInt16BE(6).toString(16));
// Using Buffer.readUInt16LE() method
console.log(buf.readUInt16BE(2).toString(16));
输出:
700 406 101
范例2:
// Node.js program to demonstrate the
// Buffer.readUInt16LE() method
// Creating a buffer
const buf = Buffer.from([0x1714, 0x1024, 0x2113,
0x2121, 0x1245, 0x1675, 0x1725, 0x1856]);
// Using Buffer.readUInt16LE() method
console.log(buf.readUInt16BE(0).toString(16));
// Using Buffer.readUInt16LE() method
console.log(buf.readUInt16BE(6).toString(16));
// Using Buffer.readUInt16LE() method
console.log(buf.readUInt16BE(10).toString(16));
输出:
1424 2556 RangeError [ERR_OUT_OF_RANGE]:The value of "offset" is out ofrange. It must be >= 0 and <= 6. Received 10 at boundsError (internal/buffer.js:49:9) at Buffer.readUInt16BE (internal/buffer.js:215:5) at /home/runner/index.js:14:17 ......
上面的示例显示了错误,因为其参数不在有效范围内。
注意:上面的程序将通过使用node index.js
命令。
参考: https://nodejs.org/dist/latest-v13.x/docs/api/buffer.html#buffer_buf_readuint16le_offset
相关用法
注:本文由纯净天空筛选整理自Rajnis09大神的英文原创作品 Node.js | Buffer.readUInt16LE() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。