JavaScript의 atob을 사용하여 base64를 디코딩하면 utf-8 문자열이 제대로 디코딩되지 않습니다.
JavaScript의 atob() 함수는 base64로 인코딩된 문자열을 디코딩합니다. 그러나 입력이 ASCII로 인코딩된 것으로 가정합니다. 이로 인해 UTF-8로 인코딩된 문자와 같이 ASCII가 아닌 문자가 포함된 문자열을 디코딩할 때 문제가 발생할 수 있습니다.
이 문제에 대한 해결책은 특별히 UTF-8 문자열을 디코딩하는 함수를 사용하는 것입니다. 그러한 함수 중 하나가 decodeURIComponent()이며, 이는 encodeURIComponent()로 인코딩된 UTF-8 문자열을 디코딩하는 데 사용할 수 있습니다.
<code class="javascript">const decodedString = decodeURIComponent(encodedString);</code>
또 다른 옵션은 [js-base64와 같은 라이브러리를 사용하는 것입니다. ](https://www.npmjs.com/package/js-base64) 또는 [base64-js](https://github.com/beatgammit/base64-js)는 base64 문자열 인코딩 및 디코딩을 위한 기능을 제공합니다.
다음은 js-base64를 사용하여 UTF-8 문자열을 디코딩하는 방법에 대한 예입니다.
<code class="javascript">const decodedString = Base64.decode(encodedString);</code>
문자열을 디코딩한 후에는 이를 일반 JavaScript 문자열로 사용할 수 있습니다. .
위 내용은 JavaScript에서 Base64의 UTF-8 문자열을 디코딩하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!