Node.js Buffer
Die JavaScript-Sprache selbst hat nur einen String-Datentyp und keinen Binärdatentyp.
Die Buffer-Klasse in Node.js ist ein Kernwerkzeug für den Umgang mit Binärdaten und bietet effiziente Operationen für Binärdaten.
Die Buffer-Klasse ist besonders nützlich in Szenarien wie Dateioperationen, Netzwerkkommunikation und Bildverarbeitung.
Funktionen:
- Binärdaten:
BufferDas Objekt ist ein Array fester Größe, das Rohbinärdaten enthält. Jedes Element belegt ein Byte (8 Bits), daherBufferes ist für die Verarbeitung von Binärdaten geeignet, wie Dateiinhalte, Netzwerkpakete usw. - Unveränderlichkeit: Obwohl
Bufferder Inhalt des Objekts nach der Erstellung geändert werden kann, ist seine Länge fest und kann nicht dynamisch geändert werden.
Buffer und Zeichenkodierungen
Buffer-Instanzen werden im Allgemeinen verwendet, um Sequenzen codierter Zeichen darzustellen, wie UTF-8, UCS2, Base64 oder hexadezimal codierte Daten. Durch die Verwendung expliziter Zeichenkodierungen kann zwischen Buffer-Instanzen und gewöhnlichen JavaScript-Zeichenketten konvertiert werden.
Beispiel
// Gibt 72756e6f6f62 aus
console.log(buf.toString('hex'));
// Gibt cnVub29i aus
console.log(buf.toString('base64'));
Die derzeit von Node.js unterstützten Zeichenkodierungen umfassen:
ascii- Es werden nur 7-Bit-ASCII-Daten unterstützt. Diese Kodierung ist sehr schnell, wenn das High-Bit entfernt wird.
utf8- Unicode-Zeichen, als Multibyte kodiert. Viele Webseiten und andere Dokumentformate verwenden UTF-8.
utf16le- 2 oder 4 Bytes, Little-Endian-kodierte Unicode-Zeichen. Unterstützt Surrogatpaare (U+10000 bis U+10FFFF).
ucs2 - utf16leAlias von .
base64- Base64-Kodierung.
latin1- Eine Möglichkeit, einenBufferin einen einbyte-kodierten String zu kodieren.
binary - latin1Alias von .
hex- Kodiert jedes Byte in zwei hexadezimale Zeichen.
Erstellen einer Buffer-Klasse
Buffer bietet die folgenden APIs zum Erstellen einer Buffer-Klasse:
- Buffer.alloc(size[, fill[, encoding]]):Erstellt einen Buffer mit einer Länge von size Bytes, was dem Zuweisen von size Bytes Speicherplatz entspricht, wobei jeder Byte-Wert 0 ist.
- Buffer.allocUnsafe(size):Erstellt einen Buffer mit einer Länge von size Bytes, aber der Buffer kann alte Daten enthalten, was das Ausführungsergebnis beeinflussen kann, daher der Name unsafe.
- Buffer.allocUnsafeSlow(size):Wird verwendet, um eine neue Buffer-Instanz der angegebenen Größe zuzuweisen, aber ohne sie zu initialisieren.
- Buffer.from(array):Gibt eine neue Buffer-Instanz zurück, die mit den Werten von array initialisiert wurde (die Elemente des übergebenen Arrays dürfen nur Zahlen sein, andernfalls werden sie automatisch durch 0 überschrieben).
- Buffer.from(arrayBuffer[, byteOffset[, length]]):Gibt einen neu erstellten Buffer zurück, der denselben Speicher wie der angegebene ArrayBuffer gemeinsam nutzt.
- Buffer.from(buffer):Kopiert die Daten der übergebenen Buffer-Instanz und gibt eine neue Buffer-Instanz zurück.
- Buffer.from(string[, encoding]):Erstellt einen Buffer aus einem String; eine Kodierung kann angegeben werden, standardmäßig UTF-8.
Beispiel
const buf1 = Buffer.alloc(10);
// Erstellt einen Buffer der Länge 10, gefüllt mit 0x1.
const buf2 = Buffer.alloc(10, 1);
// Erstellt einen Buffer der Länge 10, der nicht initialisiert ist.
// Diese Methode ist schneller als der Aufruf von Buffer.alloc(),
// aber die zurückgegebene Buffer-Instanz kann alte Daten enthalten,
// muss also mit fill() oder write() neu geschrieben werden.
const buf3 = Buffer.allocUnsafe(10);
// Erstellt einen Buffer, der [0x1, 0x2, 0x3] enthält.
const buf4 = Buffer.from([1, 2, 3]);
// Erstellt einen Buffer, der die UTF-8-Bytes [0x74, 0xc3, 0xa9, 0x73, 0x74] enthält.
const buf5 = Buffer.from('tést');
// Erstellt einen Buffer, der die Latin-1-Bytes [0x74, 0xe9, 0x73, 0x74] enthält.
const buf6 = Buffer.from('tést', 'latin1');
In Buffer schreiben
Syntax
Die Syntax zum Schreiben in einen Node-Buffer lautet wie folgt:
buf.write(string[, offset[, length]][, encoding])
Parameters
Die Parameter werden wie folgt beschrieben:
string- Der String, der in den Buffer geschrieben werden soll.
offset- Der Indexwert, an dem der Buffer mit dem Schreiben beginnt; standardmäßig 0.
length- Die Anzahl der zu schreibenden Bytes, standardmäßig buffer.length.
encoding- Die zu verwendende Kodierung. Standardmäßig 'utf8'.
Schreibt string an der offset-Position in buf gemäß der Zeichenkodierung von encoding. Der Parameter length ist die Anzahl der zu schreibenden Bytes. Wenn buf nicht genügend Platz bietet, um den gesamten string aufzunehmen, wird nur ein Teil von string geschrieben. Teilweise dekodierte Zeichen werden nicht geschrieben.
Rückgabewert
Gibt die tatsächlich geschriebene Größe zurück. Wenn der Pufferplatz nicht ausreicht, wird nur ein Teil des Strings geschrieben.
Beispiel
buf = Buffer.alloc(256);
len = buf.write("www.example.com");
console.log("写入字节数 : "+ len);
Führen Sie den obigen Code aus, und das Ausgabeergebnis ist:
$node main.js 写入字节数 : 14
Daten aus Buffer lesen
Syntax
Die Syntax zum Lesen von Node-Buffer-Daten lautet wie folgt:
buf.toString([encoding[, start[, end]]])
Parameters
Die Parameter werden wie folgt beschrieben:
encoding- Die zu verwendende Kodierung. Standardmäßig 'utf8'.
start- Gibt die Indexposition an, ab der gelesen werden soll; standardmäßig 0.
end- Die Endposition, standardmäßig das Ende des Buffers.
Rückgabewert
Dekodiert Buffer-Daten und gibt unter Verwendung der angegebenen Kodierung einen String zurück.
Beispiel
buf = Buffer.alloc(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)); //使用 'ascii' 编码, 并输出: abcde
console.log( buf.toString('utf8',0,5)); // 使用 'utf8' 编码, 并输出: abcde
console.log( buf.toString(undefined,0,5)); // 使用默认的 'utf8' 编码, 并输出: abcde
Führen Sie den obigen Code aus, und das Ausgabeergebnis ist:
$ node main.js abcdefghijklmnopqrstuvwxyz abcde abcde abcde
Konvertieren von Buffer in JSON-Objekt
Syntax
Das Syntaxformat der Funktion zum Konvertieren eines Node-Buffers in ein JSON-Objekt lautet wie folgt:
buf.toJSON()
Beim Stringifizieren einer Buffer-Instanz,JSON.stringify()wird diese Methode implizit aufgerufen.toJSON()。
Rückgabewert
Gibt ein JSON-Objekt zurück.
Beispiel
const buf = Buffer.from([0x1, 0x2, 0x3, 0x4, 0x5]);
const json = JSON.stringify(buf);
// 输出: {"type":"Buffer","data":[1,2,3,4,5]}
console.log(json);
const copy = JSON.parse(json, (key, value) => {
return value && value.type === 'Buffer' ?
Buffer.from(value.data) :
value;
});
// 输出: <Buffer 01 02 03 04 05>
console.log(copy);
Führen Sie den obigen Code aus, und das Ausgabeergebnis ist:
{"type":"Buffer","data":[1,2,3,4,5]}
<Buffer 01 02 03 04 05>
Buffer-Verkettung
Syntax
Die Syntax für die Node-Buffer-Verkettung lautet wie folgt:
Buffer.concat(list[, totalLength])
Parameters
Die Parameter werden wie folgt beschrieben:
list- Eine Array-Liste von Buffer-Objekten, die verkettet werden sollen.
totalLength- Gibt die Gesamtlänge des verketteten Buffer-Objekts an.
Rückgabewert
Gibt ein neues Buffer-Objekt zurück, das durch Verketten mehrerer Elemente gebildet wird.
Beispiel
var buffer1 = Buffer.from(('Example'));
var buffer2 = Buffer.from(('www.example.com'));
var buffer3 = Buffer.concat([buffer1,buffer2]);
console.log("buffer3 内容: " + buffer3.toString());
Führen Sie den obigen Code aus, und das Ausgabeergebnis ist:
buffer3 内容: Examplewww.example.com
Buffer-Vergleich
Syntax
Die Funktionssyntax für den Node-Buffer-Vergleich lautet wie folgt. Diese Methode wurde in Node.js v0.12.2 eingeführt:
buf.compare(otherBuffer);
Parameters
Die Parameter werden wie folgt beschrieben:
otherBuffer- ein anderes Buffer-Objekt, das mitbufverglichen wird.
Rückgabewert
Gibt eine Zahl zurück, die angibt, obbufin Bezug aufotherBufferdavor, danach oder gleich ist.
Beispiel
var buffer1 = Buffer.from('ABC');
var buffer2 = Buffer.from('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 + "之后");
}
Führen Sie den obigen Code aus, und das Ausgabeergebnis ist:
ABC在ABCD之前
Buffer kopieren
Syntax
Die Syntax zum Kopieren von Node-Buffer lautet wie folgt:
buf.copy(targetBuffer[, targetStart[, sourceStart[, sourceEnd]]])
Parameters
Die Parameter werden im Folgenden beschrieben:
targetBuffer- Das zu kopierende Buffer-Objekt.
targetStart- Zahl, optional, Standardwert: 0
sourceStart- Zahl, optional, Standardwert: 0
sourceEnd- Zahl, optional, Standardwert: buffer.length
Rückgabewert
Kein Rückgabewert.
Beispiel
var buf1 = Buffer.from('abcdefghijkl');
var buf2 = Buffer.from('EXAMPLE');
//将 buf2 插入到 buf1 指定位置上
buf2.copy(buf1, 2);
console.log(buf1.toString());
Das Ausführen des obigen Codes liefert das folgende Ergebnis:
abEXAMPLEijkl
Buffer-Slice
Die Syntax zum Slicing von Node-Buffer lautet wie folgt:
buf.slice([start[, end]])
Parameters
Die Parameter werden im Folgenden beschrieben:
start- Zahl, optional, Standardwert: 0
end- Zahl, optional, Standardwert: buffer.length
Rückgabewert
Gibt einen Buffer zurück, der auf denselben Speicher wie der alte Buffer zeigt, aber von start bis end geschnitten ist.
Beispiel
var buffer1 = Buffer.from('example');
// 剪切缓冲区
var buffer2 = buffer1.slice(0,2);
console.log("buffer2 content: " + buffer2.toString());
Das Ausführen des obigen Codes liefert das folgende Ergebnis:
buffer2 content: ru
Buffer-Länge
Syntax
Die Syntax zur Berechnung der Node-Buffer-Länge lautet wie folgt:
buf.length;
Rückgabewert
Gibt die vom Buffer-Objekt belegte Speicherlänge zurück.
Beispiel
var buffer = Buffer.from('www.example.com');
// 缓冲区长度
console.log("buffer length: " + buffer.length);
Das Ausführen des obigen Codes liefert das folgende Ergebnis:
buffer length: 14
Referenzhandbuch für Methoden
Die folgende Liste enthält die häufig verwendeten Methoden des Node.js-Buffer-Moduls (beachten Sie, dass einige Methoden in älteren Versionen nicht verfügbar sind):
| Nein. | Methode & Beschreibung |
|---|---|
| 1 | new Buffer(size) Weist einen neuen Buffer mit size Bytes zu, wobei jedes Byte 8 Bit entspricht. Beachten Sie, dass size kleiner als kMaxLength sein muss, andernfalls wird eine RangeError-Ausnahme ausgelöst.Veraltet: Verwenden Sie stattdessen Buffer.alloc() (oder Buffer.allocUnsafe()). |
| 2 | new Buffer(buffer) Kopiert die Daten aus dem buffer-Parameter in die Buffer-Instanz.Veraltet: Verwenden Sie stattdessen Buffer.from(buffer). |
| 3 | new Buffer(str[, encoding]) Weist einen neuen Buffer zu, der die angegebene Zeichenkette str enthält. Die Kodierung ist standardmäßig 'utf8'.Veraltet: Verwenden Sie stattdessen Buffer.from(string[, encoding]). |
| 4 | buf.length Gibt die Anzahl der Bytes in diesem Buffer zurück. Beachten Sie, dass dies nicht unbedingt die Größe des Inhalts im Buffer ist. length ist die Menge an Speicher, die für das Buffer-Objekt zugewiesen wurde, und ändert sich nicht, wenn sich der Inhalt des Buffer-Objekts ändert. |
| 5 | buf.write(string[, offset[, length]][, encoding]) Schreibt die Stringdaten gemäß dem offset-Parameter und der angegebenen Kodierung in den Puffer. Der offset ist standardmäßig 0 und die Kodierung standardmäßig utf8. Die length ist die Byte-Größe des zu schreibenden Strings. Gibt eine Zahl zurück, die angibt, wie viele 8-Bit-Byte-Streams geschrieben wurden. Wenn der Puffer nicht genügend Platz bietet, um den gesamten String aufzunehmen, wird nur ein Teil des Strings geschrieben. length ist standardmäßig buffer.length - offset. Diese Methode schreibt keine partiellen Zeichen. |
| 6 | buf.writeUIntLE(value, offset, byteLength[, noAssert]) Schreibt value gemäß offset und byteLength in den Puffer. Unterstützt vorzeichenlose Ganzzahlen bis zu 48 Bit, Little-Endian, zum Beispiel: const buf = Buffer.allocUnsafe(6); buf.writeUIntLE(0x1234567890ab, 0, 6); // 输出: <Buffer ab 90 78 56 34 12> console.log(buf);Wenn noAssert true ist, wird die Gültigkeit von value und offset nicht mehr geprüft. Standardwert ist false. |
| 7 | buf.writeUIntBE(value, offset, byteLength[, noAssert]) Schreibt value gemäß offset und byteLength in den Puffer. Unterstützt vorzeichenlose Ganzzahlen bis zu 48 Bit, Big-Endian. Wenn noAssert true ist, wird die Gültigkeit von value und offset nicht mehr geprüft. Standardwert ist false. const buf = Buffer.allocUnsafe(6); buf.writeUIntBE(0x1234567890ab, 0, 6); // 输出: <Buffer 12 34 56 78 90 ab> console.log(buf); |
| 8 | buf.writeIntLE(value, offset, byteLength[, noAssert]) Schreibt value gemäß offset und byteLength in den Puffer. Unterstützt vorzeichenbehaftete Ganzzahlen bis zu 48 Bit, Little-Endian. Wenn noAssert true ist, wird die Gültigkeit von value und offset nicht mehr geprüft. Standardwert ist false. |
| 9 | buf.writeIntBE(value, offset, byteLength[, noAssert]) Schreibt value gemäß offset und byteLength in den Puffer. Unterstützt vorzeichenbehaftete Ganzzahlen bis zu 48 Bit, Big-Endian. Wenn noAssert true ist, wird die Gültigkeit von value und offset nicht mehr geprüft. Standardwert ist false. |
| 10 | buf.readUIntLE(offset, byteLength[, noAssert]) Unterstützt das Lesen vorzeichenloser Zahlen mit bis zu 48 Bits, Little-Endian. Wenn noAssert true ist, wird offset nicht mehr darauf geprüft, ob er die Pufferlänge überschreitet. Standard ist false. |
| 11 | buf.readUIntBE(offset, byteLength[, noAssert]) Unterstützt das Lesen vorzeichenloser Zahlen mit bis zu 48 Bits, Big-Endian. Wenn noAssert true ist, wird offset nicht mehr darauf geprüft, ob er die Pufferlänge überschreitet. Standard ist false. |
| 12 | buf.readIntLE(offset, byteLength[, noAssert]) Unterstützt das Lesen vorzeichenbehafteter Zahlen mit bis zu 48 Bits, Little-Endian. Wenn noAssert true ist, wird offset nicht mehr darauf geprüft, ob er die Pufferlänge überschreitet. Standard ist false. |
| 13 | buf.readIntBE(offset, byteLength[, noAssert]) Unterstützt das Lesen vorzeichenbehafteter Zahlen mit bis zu 48 Bits, Big-Endian. Wenn noAssert true ist, wird offset nicht mehr darauf geprüft, ob er die Pufferlänge überschreitet. Standard ist false. |
| 14 | buf.toString([encoding[, start[, end]]]) Gibt eine dekodierte Zeichenkette gemäß dem Parameter encoding zurück (Standard ist 'utf8'). Außerdem werden die übergebenen Parameter start (Standard 0) und end (Standard buffer.length) als Wertebereich verwendet. |
| 15 | buf.toJSON() Konvertiert eine Buffer-Instanz in ein JSON-Objekt. |
| 16 | buf[index] Ruft das angegebene Byte ab oder legt es fest. Der Rückgabewert stellt ein Byte dar, daher ist der gültige Bereich des Rückgabewerts hexadezimal 0x00 bis 0xFF oder dezimal 0 bis 255. |
| 17 | buf.equals(otherBuffer) Vergleicht, ob zwei Buffer gleich sind, und gibt true zurück, wenn ja, andernfalls false. |
| 18 | buf.compare(otherBuffer) Vergleicht zwei Buffer-Objekte und gibt eine Zahl zurück, die angibt, ob buf vor otherBuffer, nach otherBuffer oder an derselben Position wie otherBuffer liegt. |
| 19 | buf.copy(targetBuffer[, targetStart[, sourceStart[, sourceEnd]]]) Kopiert Buffer; Quelle und Ziel können dieselben sein. targetStart (Start-Offset des Ziels) und sourceStart (Start-Offset der Quelle) sind standardmäßig beide 0. sourceEnd (End-Offset der Quelle) ist standardmäßig die Länge der Quelle buffer.length. |
| 20 | buf.slice([start[, end]]) Schneidet ein Buffer-Objekt heraus, wobei der Index anhand der Offsets start (Standard 0) und end (Standard buffer.length) zugeschnitten wird. Negative Indizes werden vom Ende des Buffers aus berechnet. |
| 21 | buf.readUInt8(offset[, noAssert]) Liest eine vorzeichenlose 8-Bit-Ganzzahl am angegebenen Offset. Wenn der Parameter noAssert true ist, wird der Parameter offset nicht validiert. In diesem Fall kann offset über das Ende des Buffers hinausgehen. Standard ist false. |
| 22 | buf.readUInt16LE(offset[, noAssert]) Liest eine vorzeichenlose 16-Bit-Ganzzahl am angegebenen Offset unter Verwendung eines speziellen Endian-Byte-Reihenfolgeformats. Wenn der Parameter noAssert true ist, wird der Parameter offset nicht validiert. Das bedeutet, offset kann über das Ende des Buffers hinausgehen. Standard ist false. |
| 23 | buf.readUInt16BE(offset[, noAssert]) Liest eine vorzeichenlose 16-Bit-Ganzzahl am angegebenen Offset unter Verwendung eines speziellen Endian-Byte-Reihenfolgeformats, Big-Endian. Wenn der Parameter noAssert true ist, wird der Parameter offset nicht validiert. Das bedeutet, dass offset über das Ende des Puffers hinausgehen kann. Standard ist false. |
| 24 | buf.readUInt32LE(offset[, noAssert]) Liest eine vorzeichenlose 32-Bit-Ganzzahl am angegebenen Offset unter Verwendung des angegebenen Endian-Byte-Reihenfolgeformats, Little-Endian. Wenn der Parameter noAssert true ist, wird der Parameter offset nicht validiert. Das bedeutet, dass offset über das Ende des Puffers hinausgehen kann. Standard ist false. |
| 25 | buf.readUInt32BE(offset[, noAssert]) Liest eine vorzeichenlose 32-Bit-Ganzzahl am angegebenen Offset unter Verwendung des angegebenen Endian-Byte-Reihenfolgeformats, Big-Endian. Wenn der Parameter noAssert true ist, wird der Parameter offset nicht validiert. Das bedeutet, dass offset über das Ende des Puffers hinausgehen kann. Standard ist false. |
| 26 | buf.readInt8(offset[, noAssert]) Liest eine vorzeichenbehaftete 8-Bit-Ganzzahl am angegebenen Offset. Wenn der Parameter noAssert true ist, wird der Parameter offset nicht validiert. Das bedeutet, dass offset über das Ende des Puffers hinausgehen kann. Standard ist false. |
| 27 | buf.readInt16LE(offset[, noAssert]) Liest eine vorzeichenbehaftete 16-Bit-Ganzzahl am angegebenen Offset unter Verwendung eines speziellen Endian-Formats, Little-Endian. Wenn der Parameter noAssert true ist, wird der Parameter offset nicht validiert. Das bedeutet, dass offset über das Ende des Puffers hinausgehen kann. Standard ist false. |
| 28 | buf.readInt16BE(offset[, noAssert]) Liest eine vorzeichenbehaftete 16-Bit-Ganzzahl am angegebenen Offset unter Verwendung eines speziellen Endian-Formats, Big-Endian. Wenn der Parameter noAssert true ist, wird der Parameter offset nicht validiert. Das bedeutet, dass offset über das Ende des Puffers hinausgehen kann. Standard ist false. |
| 29 | buf.readInt32LE(offset[, noAssert]) Liest eine vorzeichenbehaftete 32-Bit-Ganzzahl aus dem Puffer am angegebenen Offset unter Verwendung der angegebenen Endian-Byte-Reihenfolge, Little-Endian. Wenn der Parameter noAssert true ist, wird der Parameter offset nicht validiert. Das bedeutet, dass offset über das Ende des Puffers hinausgehen kann. Der Standardwert ist false. |
| 30 | buf.readInt32BE(offset[, noAssert]) Liest eine vorzeichenbehaftete 32-Bit-Ganzzahl aus dem Puffer am angegebenen Offset unter Verwendung der angegebenen Endian-Byte-Reihenfolge, Big-Endian. Wenn der Parameter noAssert true ist, wird der Parameter offset nicht validiert. Das bedeutet, dass offset über das Ende des Puffers hinausgehen kann. Der Standardwert ist false. |
| 31 | buf.readFloatLE(offset[, noAssert]) Liest eine 32-Bit-Gleitkommazahl aus dem Puffer am angegebenen Offset unter Verwendung der angegebenen Endian-Byte-Reihenfolge, Little-Endian. Wenn der Parameter noAssert true ist, wird der Parameter offset nicht validiert. Das bedeutet, dass offset über das Ende des Puffers hinausgehen kann. Der Standardwert ist false. |
| 32 | buf.readFloatBE(offset[, noAssert]) Liest eine 32-Bit-Gleitkommazahl aus dem Puffer am angegebenen Offset unter Verwendung der angegebenen Endian-Byte-Reihenfolge, Big-Endian. Wenn der Parameter noAssert true ist, wird der Parameter offset nicht validiert. Das bedeutet, dass offset über das Ende des Puffers hinausgehen kann. Der Standardwert ist false. |
| 33 | buf.readDoubleLE(offset[, noAssert]) Liest eine 64-Bit-Gleitkommazahl mit doppelter Genauigkeit aus dem Puffer am angegebenen Offset unter Verwendung der angegebenen Endian-Byte-Reihenfolge, Little-Endian. Wenn der Parameter noAssert true ist, wird der Parameter offset nicht validiert. Das bedeutet, dass offset über das Ende des Puffers hinausgehen kann. Der Standardwert ist false. |
| 34 | buf.readDoubleBE(offset[, noAssert]) Liest eine 64-Bit-Gleitkommazahl mit doppelter Genauigkeit aus dem Puffer am angegebenen Offset unter Verwendung der angegebenen Endian-Byte-Reihenfolge, Big-Endian. Wenn der Parameter noAssert true ist, wird der Parameter offset nicht validiert. Das bedeutet, dass offset über das Ende des Puffers hinausgehen kann. Der Standardwert ist false. |
| 35 | buf.writeUInt8(value, offset[, noAssert]) Schreibt value an den angegebenen offset in den Buffer. Hinweis: value muss eine gültige vorzeichenlose 8-Bit-Ganzzahl sein. Wenn der Parameter noAssert true ist, wird der Parameter offset nicht validiert. Das bedeutet, dass value zu groß sein kann oder offset über das Ende des Buffers hinausgehen kann, wodurch value verworfen wird. Sofern Sie sich bei diesem Parameter nicht sehr sicher sind, verwenden Sie ihn nicht. Der Standardwert ist false. |
| 36 | buf.writeUInt16LE(value, offset[, noAssert]) Schreibt value gemäß dem angegebenen Endian-Format an den angegebenen offset in den Buffer. Hinweis: value muss eine gültige vorzeichenlose 16-Bit-Ganzzahl sein, Little-Endian. Wenn der Parameter noAssert true ist, werden die Parameter value und offset nicht validiert. Das bedeutet, dass value zu groß sein kann oder offset über das Ende des Buffers hinausgehen kann, wodurch value verworfen wird. Sofern Sie sich bei diesen Parametern nicht sehr sicher sind, verwenden Sie sie möglichst nicht. Der Standardwert ist false. |
| 37 | buf.writeUInt16BE(value, offset[, noAssert]) Schreibt value gemäß dem angegebenen Endian-Format an den angegebenen offset in den Buffer. Hinweis: value muss eine gültige vorzeichenlose 16-Bit-Ganzzahl sein, Big-Endian. Wenn der Parameter noAssert true ist, werden die Parameter value und offset nicht validiert. Das bedeutet, dass value zu groß sein kann oder offset über das Ende des Buffers hinausgehen kann, wodurch value verworfen wird. Sofern Sie sich bei diesen Parametern nicht sehr sicher sind, verwenden Sie sie möglichst nicht. Der Standardwert ist false. |
| 38 | buf.writeUInt32LE(value, offset[, noAssert]) Schreibt value gemäß dem angegebenen Endian-Format (LITTLE-ENDIAN: Little-Endian) an den angegebenen offset in den Buffer. Hinweis: value muss eine gültige vorzeichenlose 32-Bit-Ganzzahl sein, Little-Endian. Wenn der Parameter noAssert true ist, werden die Parameter value und offset nicht validiert. Das bedeutet, dass value zu groß sein kann oder offset über das Ende des Buffers hinausgehen kann, wodurch value verworfen wird. Sofern Sie sich bei diesen Parametern nicht sehr sicher sind, verwenden Sie sie möglichst nicht. Der Standardwert ist false. |
| 39 | buf.writeUInt32BE(value, offset[, noAssert]) Schreibt value gemäß dem angegebenen Endian-Format (Big-Endian: big-endian) an den angegebenen offset in den Buffer. Hinweis: value muss eine gültige vorzeichenbehaftete 32-Bit-Ganzzahl sein. Wenn der Parameter noAssert true ist, werden die Parameter value und offset nicht validiert. Das bedeutet, dass value zu groß sein kann oder offset über das Ende des Buffers hinausgehen kann, wodurch value verworfen wird. Sofern Sie sich dieser Parameter nicht sehr sicher sind, versuchen Sie, sie nicht zu verwenden. Der Standardwert ist false. |
| 40 | buf.writeInt8(value, offset[, noAssert]) |
| 41 | buf.writeInt16LE(value, offset[, noAssert]) Schreibt value gemäß dem angegebenen Endian-Format an den angegebenen offset in den Buffer. Hinweis: value muss eine gültige vorzeichenbehaftete 16-Bit-Ganzzahl sein. Wenn der Parameter noAssert true ist, werden die Parameter value und offset nicht validiert. Das bedeutet, dass value zu groß sein kann oder offset über das Ende des Buffers hinausgehen kann, wodurch value verworfen wird. Sofern Sie sich dieser Parameter nicht sehr sicher sind, versuchen Sie, sie nicht zu verwenden. Der Standardwert ist false. |
| 42 | buf.writeInt16BE(value, offset[, noAssert]) Schreibt value gemäß dem angegebenen Endian-Format an den angegebenen offset in den Buffer. Hinweis: value muss eine gültige vorzeichenbehaftete 16-Bit-Ganzzahl sein. Wenn der Parameter noAssert true ist, werden die Parameter value und offset nicht validiert. Das bedeutet, dass value zu groß sein kann oder offset über das Ende des Buffers hinausgehen kann, wodurch value verworfen wird. Sofern Sie sich dieser Parameter nicht sehr sicher sind, versuchen Sie, sie nicht zu verwenden. Der Standardwert ist false. |
| 43 | buf.writeInt32LE(value, offset[, noAssert]) Schreibt value gemäß dem angegebenen Endian-Format an den angegebenen offset in den Buffer. Hinweis: value muss eine gültige vorzeichenbehaftete 32-Bit-Ganzzahl sein. Wenn der Parameter noAssert true ist, werden die Parameter value und offset nicht validiert. Das bedeutet, dass value zu groß sein kann oder offset über das Ende des Buffers hinausgehen kann, wodurch value verworfen wird. Sofern Sie sich dieser Parameter nicht sehr sicher sind, versuchen Sie, sie nicht zu verwenden. Der Standardwert ist false. |
| 44 | buf.writeInt32BE(value, offset[, noAssert]) Schreibt value gemäß dem angegebenen Endian-Format an den angegebenen offset in den Buffer. Hinweis: value muss eine gültige vorzeichenbehaftete 32-Bit-Ganzzahl sein. Wenn der Parameter noAssert true ist, werden die Parameter value und offset nicht validiert. Das bedeutet, dass value zu groß sein kann oder offset über das Ende des Buffers hinausgehen kann, wodurch value verworfen wird. Sofern Sie sich dieser Parameter nicht sehr sicher sind, versuchen Sie, sie nicht zu verwenden. Der Standardwert ist false. |
| 45 | buf.writeFloatLE(value, offset[, noAssert]) Schreibt value gemäß dem angegebenen Endian-Format an den angegebenen offset in den Buffer. Hinweis: Wenn value kein 32-Bit-Gleitkommawert ist, ist das Ergebnis undefiniert. Wenn der Parameter noAssert true ist, werden die Parameter value und offset nicht validiert. Das bedeutet, dass value zu groß sein kann oder offset über das Ende des Buffers hinausgehen kann, wodurch value verworfen wird. Sofern Sie sich dieser Parameter nicht sehr sicher sind, versuchen Sie, sie nicht zu verwenden. Der Standardwert ist false. |
| 46 | buf.writeFloatBE(value, offset[, noAssert]) Schreibt value gemäß dem angegebenen Endian-Format an den angegebenen offset in den Buffer. Hinweis: Wenn value kein 32-Bit-Gleitkommawert ist, ist das Ergebnis undefiniert. Wenn der Parameter noAssert true ist, werden die Parameter value und offset nicht validiert. Das bedeutet, dass value zu groß sein kann oder offset über das Ende des Buffers hinausgehen kann, wodurch value verworfen wird. Sofern Sie sich dieser Parameter nicht sehr sicher sind, versuchen Sie, sie nicht zu verwenden. Der Standardwert ist false. |
| 47 | buf.writeDoubleLE(value, offset[, noAssert]) Schreibt value gemäß dem angegebenen Endian-Format an den angegebenen offset in den Buffer. Hinweis: value muss ein gültiger 64-Bit-Double-Wert sein. Wenn der Parameter noAssert true ist, werden die Parameter value und offset nicht validiert. Das bedeutet, dass value zu groß sein kann oder offset über das Ende des Buffers hinausgehen kann, wodurch value verworfen wird. Sofern Sie sich dieser Parameter nicht sehr sicher sind, versuchen Sie, sie nicht zu verwenden. Der Standardwert ist false. |
| 48 | buf.writeDoubleBE(value, offset[, noAssert]) Schreibt value gemäß dem angegebenen Endian-Format an den angegebenen offset in den Buffer. Hinweis: value muss ein gültiger 64-Bit-Double-Wert sein. Wenn der Parameter noAssert true ist, werden die Parameter value und offset nicht validiert. Das bedeutet, dass value zu groß sein kann oder offset über das Ende des Buffers hinausgehen kann, wodurch value verworfen wird. Sofern Sie sich dieser Parameter nicht sehr sicher sind, versuchen Sie, sie nicht zu verwenden. Der Standardwert ist false. |
| 49 | buf.fill(value[, offset][, end]) Füllt diesen Buffer mit dem angegebenen value. Wenn offset (Standard 0) und end (Standard buffer.length) nicht angegeben sind, wird der gesamte Buffer gefüllt. |