Konvertieren eines Integer-Arrays in einen String bei Javascript

8

Hier ist PHP-Code:

%Vor%

Die Ausgabe ist: 中文chinese

Hier ist Javascript-Code:

%Vor%

Die Ausgabe ist: 中æchinese

Also wie soll ich das Array bei Javascript verarbeiten?

    
solomon_wzs 25.12.2012, 06:05
quelle

6 Antworten

18

JavaScript-Strings bestehen aus UTF-16 Code-Einheiten, doch die Zahlen in Ihrem Array sind die Bytes von a UTF-8 Zeichenfolge. Hier ist eine Möglichkeit, den String zu konvertieren, der die Funktion decodeURIComponent () verwendet :

%Vor%

Die Umwandlung von UTF-8 in UTF-16 auf herkömmliche Weise ist wahrscheinlich effizienter, würde aber mehr Code erfordern.

    
PleaseStand 25.12.2012, 06:24
quelle
5
%Vor%

Das Ergebnis wird ['3','5','7','9']

sein %Vor%

Das Ergebnis wird [3,5,7,9]

sein     
ingrid 04.01.2015 10:11
quelle
3

Eine andere Lösung ohne decodeURIComponent für Zeichen bis zu 3 Bytes (U + FFFF). Die Funktion setzt voraus, dass die Zeichenfolge UTF-8 ist, nicht viel Fehlerüberprüfung ...

%Vor%     
smrtl 17.05.2013 12:07
quelle
1

Chinesischer Zeichensatz hat eine andere Codierung, bei der ein Zeichen mehr als ein Byte lang ist. Wenn Sie dies tun,

%Vor%

Sie konvertieren jedes Byte in ein Zeichen (eigentlich Zeichenfolge) und fügen es einer Zeichenfolge str hinzu. Was Sie tun müssen, ist, die Bytes zusammen zu packen.

Ich habe dein Array geändert und es hat für mich funktioniert:

%Vor%

Ich habe diese Codes von hier bekommen.

Sie können auch dies zum Packen von Bytes ansehen zu einer Zeichenfolge.

    
Amit Khanna 25.12.2012 06:33
quelle
-1

Der beste Weg scheint in diesen Tagen folgender zu sein:

%Vor%     
Sancarn 26.07.2017 22:22
quelle
-4

Grundsätzlich behandelt Javascript alle als string . Wir können die Zeichenfolge mit parseInt in ganze Zahl ändern.

Wir müssen die ganze Zahl nicht in eine Zeichenkette ändern. Versuchen Sie folgenden Code in Javascript:

%Vor%     
suresh.g 25.12.2012 06:20
quelle

Tags und Links