Zeichenkodierung
bearbeitet von plmoin @Rolf B
> fromCharCode(n) mit n<256 wird von JS NICHT als Byte interpretiert. Sondern immer als Zeichen, gespeichert in 16 Bit. Solange Du innerhalb des String-Objekts bist (sei es nun das String-Objekt oder der primitive string-Typ), hantierst Du nicht mit Bytes.
Ein Blob bringt da Klarheit wieviele bytes es sind:
~~~js
var s = String.fromCharCode(0xA);
var b = new Blob([s]);
console.log(b.size); // 1 byte
~~~
also keine 16 bit sondern nur 8. Wenn es UTF16 wäre, hätten wir hier 2 bytes!
MfG
> fromCharCode(n) mit n<256 wird von JS NICHT als Byte interpretiert. Sondern immer als Zeichen, gespeichert in 16 Bit. Solange Du innerhalb des String-Objekts bist (sei es nun das String-Objekt oder der primitive string-Typ), hantierst Du nicht mit Bytes.
Ein Blob bringt da Klarheit wieviele bytes es sind:
~~~js
var s = String.fromCharCode(0xA);
var b = new Blob([s]);
console.log(b.size); // 1 byte
~~~
also keine 16 bit sondern nur 8. Wenn es UTF16 wäre, hätten wir hier 2 bytes!
MfG
Zeichenkodierung
bearbeitet von plmoin @Rolf B
> fromCharCode(n) mit n<256 wird von JS NICHT als Byte interpretiert. Sondern immer als Zeichen, gespeichert in 16 Bit. Solange Du innerhalb des String-Objekts bist (sei es nun das String-Objekt oder der primitive string-Typ), hantierst Du nicht mit Bytes.
Ein Blob bringt da Klarheit wieviele bytes es sind:
~~~js
var s = String.fromCharCode(0xA);
var b = new Blob([s]);
console.log(b.size); // 1 byte
~~~
also keine 16 bit sondern nur 8.
MfG