You are currently viewing Node.js Buffer | Метод Buffer.readInt16BE()

Node.js Buffer | Метод Buffer.readInt16BE()

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