バッファ object_node.js のバイト長を取得する Node.js の実用的なコード スニペット

WBOY
リリース: 2016-05-16 15:10:26
オリジナル
1720 人が閲覧しました

Node.js フレームワークの Buffer オブジェクト がバイナリ データを適切にサポートできることがわかっているため、Buffer オブジェクトの実際のバイト長の取得は必須の関数です。 Node.js フレームワークは、開発者に Buffer.byteLength() メソッド を提供します。以下では、このメソッドの使用法を読者に説明するために、公式ドキュメントで提供されているルーチンを使用します。

この例の ch04.buffer-byteLength.js のメインコードは次のとおりです:

 /**
 * 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()------");  
ログイン後にコピー

【コード解析】

コードの行 06 は文字列変数を定義して初期化します。変数名は str で、データの内容は u00bd + u00bc = u00be です。読者は関連する Web サイトにアクセスして、u00bd が文字「 1/2」を表すことを確認できます。 "、u00bc は文字 "⁄"、u00be は文字 "¾" を表します。コードの 08 行目では、str.length プロパティを出力することで文字列変数 str の長さが表示され、文字が表示されます。 Buffer.byteLength() メソッドによる文字列変数 str の実際のバイト長 Buffer.byteLength() メソッドの構文は次のとおりです。 構文: Buffer.byteLength(string[, エンコーディング])
このメソッドは、文字列パラメータの実際のバイト長を表す数値を返します。エンコード パラメータのデフォルトは「utf8」エンコード形式です。

図 4.4 の結果から、文字列 str の長さ属性は 9 文字、占有バイト長は 12 であることがわかり、「1/2」、「1/4」、「3/4」がわかります。これら 3 つの文字は実際には 2 バイトの長さを占めます。

ヒント: このセクションでは、文字とバイトの 2 つの概念の類似点と相違点を理解する必要があります。コンピューターのコーディングでは、1 バイトは 8 ビットを占めます (1 バイト = 8 ビット) であり、文字は 1 バイト文字または 2 バイト文字の場合があります。また、http 応答ヘッダーの Cotent-Length を書き換える場合は、String.prototype length ではなく Buffer.byteLength() メソッドを使用することがよくあります。属性。

上記は、最初に共有した非常に実用的な Node.js コード スニペットです。以下にさらに興味深い Node.js コード スニペットがあり、皆さんの学習に役立つことを願っています。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート