Class Method: Buffer.concat(list[, totalLength])
Версия | Изменения |
---|---|
v8.0.0 | Элементы list теперь могут быть Uint8Array s. |
v0.7.11 | Добавлено в: v0.7.11 |
list
<Буфер[]> | <Uint8Array[]> Список экземпляровBuffer
илиUint8Array
для объединения.totalLength
<целое число> Общая длинаBuffer
экземпляровlist
при объединении.- Возвращает: <Буфер>
Возвращает новый Buffer
, который является результатом объединения всех Buffer
экземпляров в list
.
Если в списке нет элементов или если значение totalLength
равно 0, то возвращается новая нулевая длина Buffer
.
Если totalLength
не указано, оно рассчитывается на основе Buffer
экземпляров list
, добавленных путем добавления их длин.
totalLength
Если указано, оно преобразуется в целое число без знака. Если общая длина Buffer
s в list
превышает totalLength
, результат усекается до totalLength
.
// Create a single `Buffer` from a list of three `Buffer` instances.
const buf1 = Buffer.alloc(10);
const buf2 = Buffer.alloc(14);
const buf3 = Buffer.alloc(18);
const totalLength = buf1.length + buf2.length + buf3.length;
console.log(totalLength);
// Prints: 42
const bufA = Buffer.concat([buf1, buf2, buf3], totalLength);
console.log(bufA);
// Prints: <Buffer 00 00 00 00 ...>
console.log(bufA.length);
// Prints: 42
Метод Buffer.concat() используется для объединения всех буферных объектов в заданном массиве в один буферный объект. Возвращаемое значение этого метода также является буфером. Если длина буфера не указана, то она вычисляется из экземпляров буфера в списке.
Синтаксис:
Buffer.concat( list, length )
Параметры: Этот метод принимает два параметра, как указано выше и описано ниже:
- list (Список): Содержит список буферов для объединения.
- length (длина): Он определяет длину объединенного буфера. Этот параметр является необязательным.
Пример 1:
// Returns a new buffer with the
// copy of the passed string
var buf1 = Buffer.from("Geeks");
// Returns another buffer with
// copy of the passed string
var buf2 = Buffer.from("for");
var buf3 = Buffer.from("Geeks");
// Creates an array of buffers
var list = [buf1, buf2, buf3];
// Concatenates all buffer objects into one buffer
var newbuff = Buffer.concat(list);
console.log("The concatenated buffer:");
// Displays the concatenated buffer
console.log(newbuff);
Выход:
The concatenated buffer:
<Buffer 47 65 65 6b 73 66 6f 72 47 65 65 6b 73>
Пример 2:
// Returns a new buffer with the
// copy of the passed string
var buf1 = Buffer.from("Good");
// Returns another buffer with
// copy of the passed string
var buf2 = Buffer.from("morning");
var buf3 = Buffer.from("everyone");
// Creates an array of buffers
var list = [buf1, buf2, buf3];
// Concatenates all buffer objects
// into one buffer
var newbuff = Buffer.concat(list);
console.log("The concatenated buffer:");
// Displays the concatenated buffer
console.log(newbuff);
Выход:
The concatenated buffer:
<Buffer 47 6f 6f 64 6d 6f 72 6e 69 6e 67 65 76 65 72 79 6f 6e 65>
Примечание: Вышеуказанная программа будет скомпилирована и запущена с помощью node index.js
команда.