Latest web development tutorials

Node.js Buffer (tampón)

JavaScript lenguaje mismo únicos tipos de datos de cadena, ningún tipo de datos binarios.

Pero cuando se trata de corrientes como flujo TCP o archivo, debe utilizar los datos binarios. Por lo tanto, en Node.js, la definición de una clase de búfer que se utiliza para crear un tampón de almacenamiento especializado datos binarios.

En los Node.js, clase Buffer se libera junto con la biblioteca central del núcleo de nodo. biblioteca tampón Node.js aporta un método de almacenamiento de datos en bruto permite Node.js manejar datos binarios, cada vez que se necesita para manejar las operaciones de E / S para mover datos Node.js cuando es posible usar la biblioteca tampón . Los datos originales almacenados en la clase Buffer instancia. Un búfer es similar a una matriz de enteros, pero corresponde a una memoria prima fuera del montón V8.


Crear clase Buffer

clase Buffer Node se puede crear de varias maneras.

Método 1

Crear ejemplo una longitud de 10 bytes Buffer:

var buf = new Buffer(10);

Método 2

A través de una creación de la matriz dada Buffer Ejemplo:

var buf = new Buffer([10, 20, 30, 40, 50]);

Método 3

Crear instancia de búfer por una cadena:

var buf = new Buffer("www.w3big.com", "utf-8");

UTF-8 es la codificación predeterminada, además también es compatible con las siguientes codificaciones: "ascii", "UTF-8", "utf16le", "ucs2", "base 64" y "hexagonal".


buffer de escritura

gramática

sintaxis buffer de escritura de nodo es el siguiente:

buf.write(string[, offset[, length]][, encoding])

parámetros

Los parámetros se describen a continuación:

  • String - El búfer de cadena está escrito.

  • compensado - el búfer de índice para empezar a escribir, el valor predeterminado es 0.

  • longitud - el número de bytes escritos, por defecto buffer.length

  • codificación - la codificación utilizada.El valor por defecto es 'UTF-8'.

Valor de retorno

Devuelve el tamaño de la escritura real. Si el espacio de memoria intermedia, la única porción de la cadena está escrito.

Ejemplos

buf = new Buffer(256);
len = buf.write("www.w3big.com");

console.log("写入字节数 : "+  len);

Aplicación del código anterior, la salida es:

$node main.js
写入字节数 : 14

Lee datos de la memoria intermedia

gramática

sintaxis de datos de búfer de lectura de nodo es el siguiente:

buf.toString([encoding[, start[, end]]])

parámetros

Los parámetros se describen a continuación:

  • codificación - la codificación utilizada.El valor por defecto es 'UTF-8'.

  • Inicio - inicia la lectura de posición del índice especifica, el valor predeterminado es 0.

  • final - la posición final, el valor predeterminado es el final del búfer.

Valor de retorno

La decodificación de los datos de amortiguamiento y devuelve una cadena utilizando la codificación especificada.

Ejemplos

buf = new Buffer(26);
for (var i = 0 ; i < 26 ; i++) {
  buf[i] = i + 97;
}

console.log( buf.toString('ascii'));       // 输出: abcdefghijklmnopqrstuvwxyz
console.log( buf.toString('ascii',0,5));   // 输出: abcde
console.log( buf.toString('utf8',0,5));    // 输出: abcde
console.log( buf.toString(undefined,0,5)); // 使用 'utf8' 编码, 并输出: abcde

Aplicación del código anterior, la salida es:

$ node main.js
abcdefghijklmnopqrstuvwxyz
abcde
abcde
abcde

Tampón se convierte en un objeto JSON

gramática

La sintaxis de la función de nodo objeto Buffer en JSON es la siguiente:

buf.toJSON()

Valor de retorno

Devuelve objeto JSON.

Ejemplos

var buf = new Buffer('www.w3big.com');
var json = buf.toJSON(buf);

console.log(json);

Aplicación del código anterior, la salida es:

[ 119, 119, 119, 46, 114, 117, 110, 111, 111, 98, 46, 99, 111, 109 ]

Combinar tampón

gramática

tampón Nodo sintaxis combinada es la siguiente:

Buffer.concat(list[, totalLength])

parámetros

Los parámetros se describen a continuación:

  • Lista - una matriz de objetos de lista combinada de búfer.

  • totalLength - después de una longitud combinada total especificado del objeto Buffer.

Valor de retorno

Devolver varios miembros de un nuevo objeto Buffer fusionada.

Ejemplos

var buffer1 = new Buffer('本教程 ');
var buffer2 = new Buffer('www.w3big.com');
var buffer3 = Buffer.concat([buffer1,buffer2]);
console.log("buffer3 内容: " + buffer3.toString());

Aplicación del código anterior, la salida es:

buffer3 内容: 本教程 www.w3big.com

Comparación tampón

gramática

Nodo Buffer comparar sintaxis de la función es el siguiente, el método introducido en la versión v0.12.2 Node.js:

buf.compare(otherBuffer);

parámetros

Los parámetros se describen a continuación:

  • otherBuffer - en comparación con el buffer bufobjetos a otro objeto.

Valor de retorno

Devuelve un número que representabuf antes otherBuffer,o después de la misma.

Ejemplos

var buffer1 = new Buffer('ABC');
var buffer2 = new Buffer('ABCD');
var result = buffer1.compare(buffer2);

if(result < 0) {
   console.log(buffer1 + " 在 " + buffer2 + "之前");
}else if(result == 0){
   console.log(buffer1 + " 与 " + buffer2 + "相同");
}else {
   console.log(buffer1 + " 在 " + buffer2 + "之后");
}

Aplicación del código anterior, la salida es:

ABC在ABCD之前

búfer de copia

gramática

sintaxis Nodo copia tampón es la siguiente:

buf.copy(targetBuffer[, targetStart[, sourceStart[, sourceEnd]]])

parámetros

Los parámetros se describen a continuación:

  • targetBuffer - Buffer objetos que desea copiar.

  • targetStart - digital, opcional, por defecto: 0

  • sourceStart - digital, opcional, por defecto: 0

  • sourceEnd - digital, opcional, por defecto: buffer.length

Valor de retorno

Se desconoce el valor de retorno.

Ejemplos

var buffer1 = new Buffer('ABC');
// 拷贝一个缓冲区
var buffer2 = new Buffer(3);
buffer1.copy(buffer2);
console.log("buffer2 content: " + buffer2.toString());

Aplicación del código anterior, la salida es:

buffer2 content: ABC

Buffer de cultivos

sintaxis Nodo tampón de cultivos es la siguiente:

buf.slice([start[, end]])

parámetros

Los parámetros se describen a continuación:

  • empezar - números, opcional, por defecto: 0

  • final - digital, opcional, por defecto: buffer.length

Valor de retorno

Devuelve un nuevo buffer, es viejo y apuntan a la misma pieza de búfer de memoria, pero se empieza desde el índice a la ubicación del extremo cortado.

Ejemplos

var buffer1 = new Buffer('w3big');
// 剪切缓冲区
var buffer2 = buffer1.slice(0,2);
console.log("buffer2 content: " + buffer2.toString());

Aplicación del código anterior, la salida es:

buffer2 content: ru

longitud del búfer

gramática

tampón Nodo sintaxis cálculo de la longitud es la siguiente:

buf.length;

Valor de retorno

Copias de la memoria búfer ocupado por la longitud del objeto.

Ejemplos

var buffer = new Buffer('www.w3big.com');
//  缓冲区长度
console.log("buffer length: " + buffer.length);

Aplicación del código anterior, la salida es:

buffer length: 14

Manual de Referencia de los métodos

A continuación se presenta un módulo de Node.js Buffer lista método comúnmente utilizado (Tenga en cuenta que algunos métodos en la versión antigua no es):

No. Método y Descripción
1 nueva Buffer (tamaño)
Asignar un nuevo tamaño para el tamaño de la memoria intermedia de bytes unidad 8. Tenga en cuenta, el tamaño debe ser menor que kMaxLength, de lo contrario, se producirá una excepción RangeError.
2 nuevo buffer (buffer)
los datos de copia de parámetros a la instancia de búfer búfer.
3 nueva Buffer (str [, codificación] )
Se asigna un nuevo buffer, que contiene la cadena que se pasa en str. codificación de codificación por defecto es 'UTF-8'.
4 buf.length
Devuelve el número de bytes en la memoria intermedia. Tenga en cuenta que esto no es necesariamente el tamaño de la memoria intermedia en el interior del contenido. tampón de longitud es la cantidad de memoria asignada por el objeto, que no cambia el tampón con el contenido de los cambios de objeto.
5 buf.write (cadena [, offset [, longitud]] [, codificación])
De acuerdo con los parámetros de desplazamiento y desplazamiento especificado codificación de codificación, escribe los datos de la cadena de parámetros de amortiguamiento. Offset El valor por defecto es 0, que codifica para la codificación predeterminada es UTF-8. tamaño de la longitud longitud bytes a cadena escrita. Devuelve el tipo de número, escriba el número ocho representa el flujo de bytes. Si el buffer no es suficiente espacio para poner la cadena completa, sólo se puede escribir sólo una parte de la cadena. La longitud predeterminada es buffer.length - offset. Este método de escribir no aparecen algunos personajes.
6 buf.writeUIntLE (valor de offset, ByteLength [ , noAssert])
El valor se escribe en la memoria intermedia en donde se determina por el desplazamiento y ByteLength, el apoyo 48 bits de computación, por ejemplo:
var b = new Buffer(6);
b.writeUIntBE(0x1234567890ab, 0, 6);
// <Buffer 12 34 56 78 90 ab>
noAssert cuando el valor es cierto, ya no verifica la validez y el valor de la compensación. El valor por defecto es falso.
7 buf.writeUIntBE (valor de offset, ByteLength [ , noAssert])
El valor se escribe en la memoria intermedia en donde se determina por el desplazamiento y ByteLength, apoyar la computación de 48 bits. noAssert cuando el valor es cierto, ya no verifica la validez y el valor de la compensación. El valor por defecto es falso.
8 buf.writeIntLE (valor de offset, ByteLength [ , noAssert])
El valor se escribe en la memoria intermedia en donde se determina por el desplazamiento y ByteLength, apoyar la computación de 48 bits. noAssert cuando el valor es cierto, ya no verifica la validez y el valor de la compensación. El valor por defecto es falso.
9 buf.writeIntBE (valor de offset, ByteLength [ , noAssert])
El valor se escribe en la memoria intermedia en donde se determina por el desplazamiento y ByteLength, apoyar la computación de 48 bits. noAssert cuando el valor es cierto, ya no verifica la validez y el valor de la compensación. El valor por defecto es falso.
10 buf.readUIntLE (offset, ByteLength [, noAssert ])
Apoyo a la lectura digital de 48 o menos. Cuando noAssert es cierto, que se compensan ya no verificar que supera longitud de búfer, el valor predeterminado es falso.
11 buf.readUIntBE (offset, ByteLength [, noAssert ])
Apoyo a la lectura digital de 48 o menos. Cuando noAssert es cierto, que se compensan ya no verificar que supera longitud de búfer, el valor predeterminado es falso.
12 buf.readIntLE (offset, ByteLength [, noAssert ])
Apoyo a la lectura digital de 48 o menos. Cuando noAssert es cierto, que se compensan ya no verificar que supera longitud de búfer, el valor predeterminado es falso.
13 buf.readIntBE (offset, ByteLength [, noAssert ])
Apoyo a la lectura digital de 48 o menos. Cuando noAssert es cierto, que se compensan ya no verificar que supera longitud de búfer, el valor predeterminado es falso.
14 buf.toString ([codificación [, Inicio [ , end]]])
(El valor por defecto es 'UTF-8') devuelve una cadena de decodificada de acuerdo con el tipo de parámetros de codificación. Se basa en los parámetros pasados ​​de partida (por defecto es 0) y al final (por defecto es buffer.length) como un rango de valores.
15 buf.toJSON ()
La instancia de búfer en un objeto JSON.
16 buf [índice]
Obtiene o establece los bytes especificados. El valor de retorno representa un byte, por lo que el rango legal del valor de retorno es 0x00 a 0xFF hexadecimal o decimal 0-255.
17 buf.equals (otherBuffer)
Compara dos tampones son iguales, y si devuelve true, en caso contrario devuelve false.
18 buf.compare (otherBuffer)
Tampón de comparar dos objetos y devuelve un número que representa buf antes otherBuffer, o después de la misma.
19 buf.copy (targetBuffer [, targetStart [, sourceStart [, sourceEnd]]])
copia de amortiguación, el origen y el destino pueden ser los mismos. targetStart destino Offset de inicio y sourceStart inicial fuente predeterminada de desplazamiento es 0. sourceEnd posición final de la fuente se compensa fuente longitud buffer.length predeterminado.
20 buf.slice ([start [, end] ])
Cortar objetos de amortiguamiento, de acuerdo con el principio (por defecto es 0) y al final (por defecto es buffer.length) y el índice de desplazamiento de los cultivos. índice negativo se calcula a partir del comienzo de la memoria intermedia de la cola.
21 buf.readUInt8 (desplazamiento [, noAssert])
De acuerdo con el desplazamiento especificado Lee un entero de 8 bits. Si el parámetro es no valida será compensado parámetros de desplazamiento cierto noAssert. Si este desplazamiento puede ser más allá del final de la memoria intermedia. El valor por defecto es falso.
22 buf.readUInt16LE (desplazamiento [, noAssert])
De acuerdo con el desplazamiento especificado usando el formato de byte más significativo especial lee un entero de 16 bits con signo. Si el parámetro es no valida será compensado parámetros de desplazamiento cierto noAssert. Esto significa que el desplazamiento puede ser más allá del final de la memoria intermedia. El valor por defecto es falso.
23 buf.readUInt16BE (desplazamiento [, noAssert])
De acuerdo con el desplazamiento especificado usando el formato de byte más significativo especial lee un entero de 16 bits con signo. Si el parámetro es no valida será compensado parámetros de desplazamiento cierto noAssert. Esto significa que el desplazamiento puede ser más allá del final de la memoria intermedia. El valor por defecto es falso.
24 buf.readUInt32LE (desplazamiento [, noAssert])
De acuerdo con el desplazamiento especificado con el formato de byte más significativo se especifica Lee un entero de 32 bits con signo. Si el parámetro es no valida será compensado parámetros de desplazamiento cierto noAssert. Esto significa que el desplazamiento puede ser más allá del final de la memoria intermedia. El valor por defecto es falso.
25 buf.readUInt32BE (desplazamiento [, noAssert])
De acuerdo con el desplazamiento especificado con el formato de byte más significativo se especifica Lee un entero de 32 bits con signo. Si el parámetro es no valida será compensado parámetros de desplazamiento cierto noAssert. Esto significa que el desplazamiento puede ser más allá del final de la memoria intermedia. El valor por defecto es falso.
26 buf.readInt8 (desplazamiento [, noAssert])
De acuerdo con el desplazamiento especificado, para leer un entero de 8 bits con signo. Si el parámetro es no valida será compensado parámetros de desplazamiento cierto noAssert. Esto significa que el desplazamiento puede ser más allá del final de la memoria intermedia. El valor por defecto es falso.
27 buf.readInt16LE (desplazamiento [, noAssert])
De acuerdo con el desplazamiento especificado usando el formato especial endian Lee un entero de 16 bits con signo. Si el parámetro es no valida será compensado parámetros de desplazamiento cierto noAssert. Esto significa que el desplazamiento puede ser más allá del final de la memoria intermedia. El valor por defecto es falso.
28 buf.readInt16BE (desplazamiento [, noAssert])
De acuerdo con el desplazamiento especificado usando el formato especial endian Lee un entero de 16 bits con signo. Si el parámetro es no valida será compensado parámetros de desplazamiento cierto noAssert. Esto significa que el desplazamiento puede ser más allá del final de la memoria intermedia. El valor por defecto es falso.
29 buf.readInt32LE (desplazamiento [, noAssert])
De acuerdo con el desplazamiento especificado con el formato de byte más significativo se especifica lee un entero de 32 bits con signo. Si el parámetro es no valida será compensado parámetros de desplazamiento cierto noAssert. Esto significa que el desplazamiento puede ser más allá del final de la memoria intermedia. El valor por defecto es falso.
30 buf.readInt32BE (desplazamiento [, noAssert])
De acuerdo con el desplazamiento especificado con el formato de byte más significativo se especifica lee un entero de 32 bits con signo. Si el parámetro es no valida será compensado parámetros de desplazamiento cierto noAssert. Esto significa que el desplazamiento puede ser más allá del final de la memoria intermedia. El valor por defecto es falso.
31 buf.readFloatLE (desplazamiento [, noAssert])
De acuerdo con el desplazamiento especificado con el byte más significativo especificado para leer un formato de coma flotante de 32 bits. Si el parámetro es no valida será compensado parámetros de desplazamiento cierto noAssert. Esto significa que el desplazamiento puede ser más allá del final de la memoria intermedia. El valor por defecto es falso.
32 buf.readFloatBE (desplazamiento [, noAssert])
De acuerdo con el desplazamiento especificado con el byte más significativo especificado para leer un formato de coma flotante de 32 bits. Si el parámetro es no valida será compensado parámetros de desplazamiento cierto noAssert. Esto significa que el desplazamiento puede ser más allá del final de la memoria intermedia. El valor por defecto es falso.
33 buf.readDoubleLE (desplazamiento [, noAssert])
De acuerdo con el desplazamiento especificado con el formato de byte más significativo especificado para leer un doble de 64 bits. Si el parámetro es no valida será compensado parámetros de desplazamiento cierto noAssert. Esto significa que el desplazamiento puede ser más allá del final de la memoria intermedia. El valor por defecto es falso.
34 buf.readDoubleBE (desplazamiento [, noAssert])
De acuerdo con el desplazamiento especificado con el formato de byte más significativo especificado para leer un doble de 64 bits. Si el parámetro es no valida será compensado parámetros de desplazamiento cierto noAssert. Esto significa que el desplazamiento puede ser más allá del final de la memoria intermedia. El valor por defecto es falso.
35 buf.writeUInt8 (valor de offset [, noAssert ])
De acuerdo con el entrante compensar el valor de buffer de escritura offset. Nota: El valor debe ser un entero de 8 bits con signo válido. Si el parámetro es no valida será compensado parámetros de desplazamiento cierto noAssert. Esto significa que el valor puede ser demasiado grande, o desplazamiento puede exceder el final de la memoria intermedia se descarta el valor resultante. A menos que esté muy seguro acerca de este parámetro, no utilice. El valor por defecto es falso.
36 buf.writeUInt16LE (valor de offset [, noAssert ])
De acuerdo con el offset de entrada y el buffer de escritura valor de formato endian especificado. Nota: El valor debe ser un entero con signo de 16 bits válido. Si el parámetro es noAssert verdadero valor no será validado y compensado parámetros de desplazamiento. Esto significa que el valor puede ser demasiado grande, o desplazamiento puede exceder el final de la memoria intermedia se descarta el valor resultante. A menos que esté muy seguro acerca de este parámetro, o trate de no usar. El valor por defecto es falso.
37 buf.writeUInt16BE (valor de offset [, noAssert ])
De acuerdo con el offset de entrada y el buffer de escritura valor de formato endian especificado. Nota: El valor debe ser un entero con signo de 16 bits válido. Si el parámetro es noAssert verdadero valor no será validado y compensado parámetros de desplazamiento. Esto significa que el valor puede ser demasiado grande, o desplazamiento puede exceder el final de la memoria intermedia se descarta el valor resultante. A menos que esté muy seguro acerca de este parámetro, o trate de no usar. El valor por defecto es falso.
38 buf.writeUInt32LE (valor de offset [, noAssert ])
De acuerdo con el offset de entrada y el buffer de escritura valor de formato endian especificado. Nota: El valor debe ser un número entero válido con signo de 32 bits. Si el parámetro es noAssert verdadero valor no será validado y compensado parámetros de desplazamiento. Esto significa que el valor puede ser demasiado grande, o desplazamiento puede exceder el final de la memoria intermedia se descarta el valor resultante. A menos que esté muy seguro acerca de este parámetro, o trate de no usar. El valor por defecto es falso.
39 buf.writeUInt32BE (valor de offset [, noAssert ])
De acuerdo con el offset de entrada y el buffer de escritura valor de formato endian especificado. Nota: El valor debe ser un número entero válido con signo de 32 bits. Si el parámetro es noAssert verdadero valor no será validado y compensado parámetros de desplazamiento. Esto significa que el valor puede ser demasiado grande, o desplazamiento puede exceder el final de la memoria intermedia se descarta el valor resultante. A menos que esté muy seguro acerca de este parámetro, o trate de no usar. El valor por defecto es falso.
40 buf.writeInt8 (valor de offset [, noAssert ])
41 buf.writeInt16LE (valor de offset [, noAssert ])
De acuerdo con el offset de entrada y el buffer de escritura valor de formato endian especificado. Nota: El valor debe ser un entero de 16 bits con signo válido. Si el parámetro es noAssert verdadero valor no será validado y compensado parámetros de desplazamiento. Esto significa que el valor puede ser demasiado grande, o desplazamiento puede exceder el final de la memoria intermedia se descarta el valor resultante. A menos que esté muy seguro acerca de este parámetro, o trate de no usar. El valor por defecto es falso.
42 buf.writeInt16BE (valor de offset [, noAssert ])
De acuerdo con el offset de entrada y el buffer de escritura valor de formato endian especificado. Nota: El valor debe ser un entero de 16 bits con signo válido. Si el parámetro es noAssert verdadero valor no será validado y compensado parámetros de desplazamiento. Esto significa que el valor puede ser demasiado grande, o desplazamiento puede exceder el final de la memoria intermedia se descarta el valor resultante. A menos que esté muy seguro acerca de este parámetro, o trate de no usar. El valor por defecto es falso.
43 buf.writeInt32LE (valor de offset [, noAssert ])
De acuerdo con el offset de entrada y el buffer de escritura valor de formato endian especificado. Nota: El valor debe ser un número entero de 32 bits con signo válido. Si el parámetro es noAssert verdadero valor no será validado y compensado parámetros de desplazamiento. Esto significa que el valor puede ser demasiado grande, o desplazamiento puede exceder el final de la memoria intermedia se descarta el valor resultante. A menos que esté muy seguro acerca de este parámetro, o trate de no usar. El valor por defecto es falso.
44 buf.writeInt32BE (valor de offset [, noAssert ])
De acuerdo con el offset de entrada y el buffer de escritura valor de formato endian especificado. Nota: El valor debe ser un número entero de 32 bits con signo válido. Si el parámetro es noAssert verdadero valor no será validado y compensado parámetros de desplazamiento. Esto significa que el valor puede ser demasiado grande, o desplazamiento puede exceder el final de la memoria intermedia se descarta el valor resultante. A menos que esté muy seguro acerca de este parámetro, o trate de no usar. El valor por defecto es falso.
45 buf.writeFloatLE (valor de offset [, noAssert ])
De acuerdo con el offset de entrada y el buffer de escritura valor de formato endian especificado. Nota: cuando el valor no es el valor de un tipo de coma flotante de 32 bits, el resultado es indefinido. Si el parámetro es noAssert verdadero valor no será validado y compensado parámetros de desplazamiento. Esto significa que el valor puede ser demasiado grande, o desplazamiento puede exceder el final de la memoria intermedia se descarta el valor resultante. A menos que esté muy seguro acerca de este parámetro, o trate de no usar. El valor por defecto es falso.
46 buf.writeFloatBE (valor de offset [, noAssert ])
De acuerdo con el offset de entrada y el buffer de escritura valor de formato endian especificado. Nota: cuando el valor no es el valor de un tipo de coma flotante de 32 bits, el resultado es indefinido. Si el parámetro es noAssert verdadero valor no será validado y compensado parámetros de desplazamiento. Esto significa que el valor puede ser demasiado grande, o desplazamiento puede exceder el final de la memoria intermedia se descarta el valor resultante. A menos que esté muy seguro acerca de este parámetro, o trate de no usar. El valor por defecto es falso.
47 buf.writeDoubleLE (valor de offset [, noAssert ])
De acuerdo con el offset de entrada y el buffer de escritura valor de formato endian especificado. Nota: El valor debe ser un valor de 64 bits válidos de tipo double. Si el parámetro es noAssert verdadero valor no será validado y compensado parámetros de desplazamiento. Esto significa que el valor puede ser demasiado grande, o desplazamiento puede exceder el final de la memoria intermedia se descarta el valor resultante. A menos que esté muy seguro acerca de este parámetro, o trate de no usar. El valor por defecto es falso.
48 buf.writeDoubleBE (valor de offset [, noAssert ])
De acuerdo con el offset de entrada y el buffer de escritura valor de formato endian especificado. Nota: El valor debe ser un valor de 64 bits válidos de tipo double. Si el parámetro es noAssert verdadero valor no será validado y compensado parámetros de desplazamiento. Esto significa que el valor puede ser demasiado grande, o desplazamiento puede exceder el final de la memoria intermedia se descarta el valor resultante. A menos que esté muy seguro acerca de este parámetro, o trate de no usar. El valor por defecto es falso.
49 buf.fill (valor [, offset] [ , end])
Usando el valor especificado para llenar la memoria intermedia. Si hay desplazamiento (el valor por defecto es 0) y al final (por defecto es buffer.length), va a llenar toda la memoria intermedia.