JavaScript 文字列のサイズをバイト単位で計算する
この質問は、JavaScript 文字列のサイズをバイト単位で決定することを中心に展開しています。サーバーから受信した約 500K の UTF-8 エンコード文字列を使用して、JavaScript での UCS-2 の使用、JavaScript 実装の潜在的なバリエーション、ページ エンコードまたはコンテンツ タイプの影響など、文字列サイズに影響を与える要因を調査します。 .
JavaScript での文字列サイズの決定
文字列のサイズをバイト単位で取得するには、Blob オブジェクトを使用できます。 Blob コンストラクターは、測定する文字列を含む配列を受け取ります。結果の Blob オブジェクトの size プロパティは、バイト単位のサイズを提供します。
JavaScript 文字列サイズの計算の例
説明のために、ここに文字列の例をいくつか示します。 Blob オブジェクトを使用して計算されたサイズ:
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
// from Premasagar correction of Lauri's answer for
// strings containing lone characters in the surrogate pair range:
// https://stackoverflow.com/a/39488643/6225838
new Blob([String.fromCharCode(55555)]).size, // 3
new Blob([String.fromCharCode(55555, 57000)]).size // 4 (not 6)
);
考慮すべき追加要素
JavaScript は主に UCS-2 を採用していますが、特定の実装はこの標準から逸脱する場合があります。さらに、ページのエンコードとコンテンツ タイプが文字列のサイズ表現に影響を与える可能性があります。特定の JavaScript 実装とブラウザ環境で潜在的な差異がないか確認することが重要です。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3