Wir wissen, dass das Pufferobjekt unter dem Node.js-Framework eine gute Unterstützung für Binärdaten bieten kann, daher ist das Ermitteln der tatsächlichen Bytelänge eines Pufferobjekts eine unverzichtbare Funktion. Das Node.js-Framework stellt Entwicklern eine Buffer.byteLength()-Methode zur Verfügung. Im Folgenden verwenden wir eine Routine, die im offiziellen Dokument bereitgestellt wird, um den Lesern die Verwendung dieser Methode zu demonstrieren.
Der Hauptcode von ch04.buffer-byteLength.js in diesem Beispiel lautet wie folgt:
/** * ch04.buffer-byteLength.js */ console.info("------Buffer.byteLength()------"); console.info(); str = '\u00bd + \u00bc = \u00be'; //定义字符串 //½ + ¼ = ¾: 9 characters, 12 bytes console.log(str + ": " + str.length + " characters, " + Buffer.byteLength(str, 'utf8') + " bytes"); console.info(); console.info("------Buffer.byteLength()------");
【Code-Analyse】
Zeile 06 des Codes definiert und initialisiert eine Zeichenfolgenvariable, und der Dateninhalt ist u00bd + u00bc = u00be. Leser können diese Hexadezimalcodes überprüfen, die das Zeichen „½“ darstellen ", u00bc stellt das Zeichen "¼" dar und u00be stellt das Zeichen "¾" dar; dann wird in Zeile 08 des Codes die Länge der Zeichenfolgenvariablen str durch Drucken der Eigenschaft str.length angezeigt und die Zeichen werden angezeigt über die Buffer.byteLength()-Methode Die tatsächliche Bytelänge der String-Variablen str. Die Syntax der Buffer.byteLength()-Methode lautet wie folgt:
Syntax: Buffer.byteLength(string[,kodierung])
Diese Methode gibt eine Zahl zurück, die die tatsächliche Bytelänge des Zeichenfolgenparameters darstellt. Der Kodierungsparameter ist standardmäßig auf das Kodierungsformat „utf8“ eingestellt.
Aus den in Abbildung 4.4 gezeigten Ergebnissen können wir ersehen, dass das Längenattribut der Zeichenfolge str 9 Zeichen lang ist und die belegte Bytelänge 12 beträgt, sodass wir „½“, „¼“ und „¾“ kennen können. Diese drei Zeichen nehmen tatsächlich eine Länge von zwei Bytes ein.
Tipps: In diesem Abschnitt müssen wir die Ähnlichkeiten und Unterschiede zwischen den beiden Konzepten von Zeichen und Bytes verstehen. Bei der Computercodierung belegt ein Byte 8 Bits (1 Byte =). 8 Bit) und ein Zeichen kann ein Einzelbyte-Zeichen oder ein Doppelbyte-Zeichen sein. Darüber hinaus wird beim Schreiben von HTTP-Antwortheadern häufig die Methode Buffer.byteLength() verwendet. Wenn Sie die Cotent-Length des HTTP-Antwortheaders umschreiben möchten, verwenden Sie unbedingt die Methode Buffer.byteLength() anstelle der Länge von String.prototype Attribut.
Das Obige ist der erste superpraktische Node.js-Codeausschnitt, der mit Ihnen geteilt wird. Nachfolgend finden Sie weitere spannende Node.js-Codeausschnitte. Ich hoffe, er wird für das Lernen aller hilfreich sein.