Bagaimana untuk Menentukan Saiz String JavaScript dalam Bait?

Mary-Kate Olsen
Lepaskan: 2024-10-19 07:17:01
asal
666 orang telah melayarinya

How to Determine the Size of a JavaScript String in Bytes?

Saiz Rentetan JavaScript dalam Bait

Masalah:

Anda mempunyai rentetan JavaScript yang menduduki kira-kira 500 KB apabila dihantar melalui pelayan dalam pengekodan UTF-8. Bagaimanakah anda boleh menentukan saiznya dalam JavaScript?

Latar Belakang:

JavaScript menggunakan pengekodan UCS-2, biasanya menggunakan dua bait setiap aksara. Walau bagaimanapun, kemungkinan variasi dalam pelaksanaan JavaScript atau pengekodan jenis halaman/kandungan menimbulkan persoalan sama ada ini adalah perhubungan yang berterusan.

Jawapan:

Untuk mendapatkan saiz rentetan dalam bait, manfaatkan pembina Blob seperti berikut:

<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>
Salin selepas log masuk

Penjelasan:

Objek Blob membolehkan anda mewakili data binari dan mendapatkan semula saiznya dalam bait. Dengan menghantar rentetan anda dalam tatasusunan kepada pembina Blob, anda boleh mendapatkan saiz sebenarnya, tanpa mengira kemungkinan variasi dalam pengekodan aksara atau pelaksanaan.

Atas ialah kandungan terperinci Bagaimana untuk Menentukan Saiz String JavaScript dalam Bait?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!