2013-10-09 6 views
9

zu kodieren Wenn Sie den Link unten in den Browserschnellste Weg kyrillischen Buchstaben für url

http://be.wikipedia.org/wiki/Беларусь 

kopieren wird es den Wiki-Artikel zeigen. Aber wenn Sie auf diesen Link (oder jede andere Verbindung, die kyrillische Zeichen enthält) kopieren möchten, aus dem Browser-URL in die Zwischenablage, werden Sie so etwas wie dieses:

http://be.wikipedia.org/wiki/%D0%91%D0%B5%D0%BB%D0%B0%D1%80%D1%83%D1%81%D1%8C 

Sie können auf einen beliebigen Link klicken in der Wikipedia, die kyrillische Buchstaben im Text enthält und versuchen, sie in den Editor zu kopieren.

Also, meine Frage ist:

Was die korrekteste oder schnellste Weg, einen beliebigen Text zu konvertieren, die kyrillische Wort Беларусь in %D0%91%D0%B5%D0%BB%D0%B0%D1%80%D1%83%D1%81%D1%8C oder einem anderen Text in eine solche Art von Code enthält, so dass es ein gültiger Teil der URL ist ? Gibt es eine spezielle JavaScript-Funktion für diesen Zweck?

Ich habe überprüft, es ist eigentlich: kyrillischer Großbuchstabe Б = (hex) D0 91 für UTF-8. Deshalb ist es% D0% 91 und so weiter.

Antwort

10

Die Funktion, die Sie suchen, ist encodeURIComponent.

encodeURIComponent("Беларусь"); 
// returns "%D0%91%D0%B5%D0%BB%D0%B0%D1%80%D1%83%D1%81%D1%8C" 

Das Gegenstück ist decodeURIComponent die diesen Prozess umkehrt.

decodeURIComponent("%D0%91%D0%B5%D0%BB%D0%B0%D1%80%D1%83%D1%81%D1%8C"); 
// returns "Беларусь" 
+0

Vielen Dank! Genau das habe ich gesucht. – Haradzieniec

1

Ich denke, encodeURI(string) sollte sein, was Sie suchen. Überprüfen Sie bereits vorhandene Antworten auf dieselbe Frage, z. here!