buf.readInt16BE([offset])
Версия | Изменения |
---|---|
v10.0.0 | Удалено noAssert , и больше нет неявного принуждения к смещению uint32 . |
v0.5.5 | Добавлено в: v0.5.5 |
offset
<целое число> Количество байтов, которые необходимо пропустить перед началом чтения.- Должен удовлетворить
0 <= offset <= buf.length - 2
. - По умолчанию:
0
. - Возвращает: <целое число>
Считывает подписанное 16-разрядное целое число с большим концом из buf
указанного offset
.
Целые числа, считываемые из a Buffer
, интерпретируются как два дополнительных значения со знаком.
import { Buffer } from 'buffer';
const buf = Buffer.from([0, 5]);
console.log(buf.readInt16BE(0));
// Prints: 5
const { Buffer } = require('buffer');
const buf = Buffer.from([0, 5]);
console.log(buf.readInt16BE(0));
// Prints: 5
Метод Buffer.readInt16BE () — это встроенный интерфейс прикладного программирования буфера класса с модулем in Buffer, который считывает 16-разрядное целое число со знаком из буфера с заданным смещением в формате big endian.
Синтаксис:
Buffer.readInt16BE( offset )
Параметры: Этот метод принимает один параметр offset который определяет количество (целое число) байтов, которые необходимо пропустить перед началом записи. Значение смещения лежит в пределах диапазона 0 <= offset <= buf.length – 2. Его значение по умолчанию равно нулю.
Return value (Возвращаемое значение): Он возвращает смещение вместе с количеством записанных байтов.
Пример 1:
// Node.js program to demonstrate the
// Buffer.readInt16BE() method
// Create a buffer
const buf = Buffer.from([0, 3]);
// Display the result
console.log(buf.readInt16BE(0));
Выход:
3
Пример 2:
// Node.js program to demonstrate the
// Buffer.readInt16BE() method
// Create a buffer
const buf = Buffer.from([0, 3]);
// Display the result
console.log(buf.readInt16BE(1));
Выход:
internal/buffer.js:72
throw new ERR_OUT_OF_RANGE(type || 'offset',
^
RangeError [ERR_OUT_OF_RANGE]: The value of "offset" is out of range.
It must be >= 0 and <= 0. Received 1
. . .
Ссылка: https://nodejs.org/api/buffer.html#buffer_buf_readint16be_offset