Heim >Web-Frontend >js-Tutorial >Wie dekodiere ich UTF-8-Strings aus Base64 in JavaScript?

Wie dekodiere ich UTF-8-Strings aus Base64 in JavaScript?

Linda Hamilton
Linda HamiltonOriginal
2024-11-01 23:08:29689Durchsuche

How to Decode UTF-8 Strings from Base64 in JavaScript?

Die Verwendung von JavaScripts atob zum Dekodieren von Base64 dekodiert UTF-8-Zeichenfolgen nicht ordnungsgemäß.

Die atob()-Funktion von JavaScript dekodiert base64-kodierte Zeichenfolgen. Es wird jedoch davon ausgegangen, dass die Eingabe ASCII-codiert ist. Dies kann zu Problemen bei der Dekodierung von Zeichenfolgen führen, die Nicht-ASCII-Zeichen enthalten, beispielsweise solche, die in UTF-8 kodiert sind.

Die Lösung für dieses Problem besteht darin, eine Funktion zu verwenden, die speziell UTF-8-Zeichenfolgen dekodiert. Eine solche Funktion ist decodeURIComponent(), die zum Dekodieren eines UTF-8-Strings verwendet werden kann, der mit encodeURIComponent() kodiert wurde.

<code class="javascript">const decodedString = decodeURIComponent(encodedString);</code>

Eine andere Möglichkeit ist die Verwendung einer Bibliothek wie [js-base64 ](https://www.npmjs.com/package/js-base64) oder [base64-js](https://github.com/beatgammit/base64-js), die Funktionen zum Kodieren und Dekodieren von Base64-Strings bereitstellen.

Hier ist ein Beispiel für die Verwendung von js-base64 zum Dekodieren eines UTF-8-Strings:

<code class="javascript">const decodedString = Base64.decode(encodedString);</code>

Sobald Sie den String dekodiert haben, können Sie ihn als regulären JavaScript-String verwenden .

Das obige ist der detaillierte Inhalt vonWie dekodiere ich UTF-8-Strings aus Base64 in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn