JavaScript 文字列のサイズ (バイト単位)
問題:
を占める JavaScript 文字列があります。 UTF-8 エンコーディングでサーバー経由で送信される場合は約 500 KB。 JavaScript でサイズを確認するにはどうすればよいですか?
背景:
JavaScript では UCS-2 エンコーディングが採用されており、通常は 1 文字あたり 2 バイトを使用します。ただし、JavaScript の実装やページ/コンテンツ タイプのエンコーディングに変動が生じる可能性があるため、これが一定の関係であるかどうかについて疑問が生じます。
答え:
文字列のサイズを取得するには
<code class="javascript">console.info( new Blob(['?']).size, // 4 new Blob(['?']).size, // 4 new Blob(['??']).size, // 8 new Blob(['??']).size, // 8 new Blob(['I\'m a string']).size, // 12 // Correction for strings with lone characters in the surrogate pair range: new Blob([String.fromCharCode(55555)]).size, // 3 new Blob([String.fromCharCode(55555, 57000)]).size // 4 (not 6) );</code>
説明:
Blob オブジェクトを使用すると、バイナリ データを表現し、そのサイズをバイト単位で取得できます。配列内の文字列を Blob コンストラクターに渡すことで、文字エンコーディングや実装の潜在的な違いに関係なく、実際のサイズを取得できます。
以上がJavaScript 文字列のサイズをバイト単位で確認するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。