JavaScript-String-Größe in Bytes
Problem:
Sie haben einen JavaScript-String, der belegt ca. 500 KB bei Übertragung über den Server in UTF-8-Kodierung. Wie können Sie seine Größe in JavaScript bestimmen?
Hintergrund:
JavaScript verwendet UCS-2-Codierung, normalerweise mit zwei Bytes pro Zeichen. Mögliche Variationen in der JavaScript-Implementierung oder der Seiten-/Inhaltstyp-Kodierung werfen jedoch die Frage auf, ob dies eine konstante Beziehung ist.
Antwort:
Um die Größe der Zeichenfolge zu ermitteln Bytes nutzen Sie den Blob-Konstruktor wie folgt:
<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>
Erklärung:
Mit dem Blob-Objekt können Sie Binärdaten darstellen und deren Größe in Bytes abrufen. Indem Sie Ihren String innerhalb eines Arrays an den Blob-Konstruktor übergeben, können Sie seine tatsächliche Größe erhalten, unabhängig von möglichen Abweichungen in der Zeichenkodierung oder Implementierung.
Das obige ist der detaillierte Inhalt vonWie bestimme ich die Größe eines JavaScript-Strings in Bytes?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!