Dag: JS mit UTF-8 falsche Darstellung in HTML5

Beitrag lesen

"\u{1d11e}" ist ECMAScript 6 aus dem Jahr 2015. Es müsste eine neue Version von JSON geben um das zu unterstützen. Ich denke nicht dass das passieren wird. Es gibt keinen dringenden Grund zur Änderung. Soweit ich weiss speichert ES 6 die Zeichen intern nach wie vor als surrogate pairs. Nur der Umgang damit ist einfacher. Und "\ud834\udd1e" funktioniert nach wie vor.

JSON ist eine Bytesequenz. Verwendungszweck: Datentransport, Datenspeicherung (IO). Ein internes Format betreff Kodierung von Zeichen hat damit überhaupt nichts zu tun, das ist eine interne Angelegenheit.

Wie soll es auch anders sein: Perl speichert UTF-8-kodierte Zeichen in einem internen Format. JS speichert UTF-8-kodierte Zeichen ebenfalls in einem internen Format. PHP neuerdings auch. Alle wollen miteinander reden, also wird spätestens am IO-Layer das interne Format zurückgelassen und nach draußen gehen nur noch Bytesequenzen.

Dag