首頁 >web前端 >js教程 >如何使用 JavaScript 對 Base64 字串進行編碼和解碼?

如何使用 JavaScript 對 Base64 字串進行編碼和解碼?

Susan Sarandon
Susan Sarandon原創
2024-10-31 19:52:29576瀏覽

How do I encode and decode strings in Base64 using JavaScript?

使用JavaScript 以Base64 編碼和解碼字串

處理二進位資料時,需要將其編碼為適合的格式透過網路傳輸或儲存在資料庫中的情況經常出現。 JavaScript 為此提供了一個有用的工具:Base64 編碼。

使用 btoa() 編碼

要使用 JavaScript 對 Base64 中的字串進行編碼,您可以使用 btoa( ) 功能。此函數採用表示 8 位元位元組數組的字串參數,並將其轉換為 Base64 編碼的字串。例如:

<code class="javascript">const encodedString = btoa('Hello World!'); // Output: "SGVsbG8gV29ybGQh"</code>

使用atob() 解碼

如果您有Base64 編碼的字串並希望將其解碼回其原始形式,您可以使用atob() 函數。它傳回一個字串,其中每個字元代表一個8 位元位元組:

<code class="javascript">const decodedString = atob('SGVsbG8gV29ybGQh'); // Output: "Hello World!"</code>

注意事項

值得注意的是btoa() 和atob( ) 工作在位元組數組,因此如果您的字串包含非ASCII 字元或二進位數據,您可能需要在使用btoa() 之前對其進行編碼。此外,atob() 函數傳回一個二進位字串。如果您想將其輸出解釋為文字字串,您可能需要使用 Unicode API 將其轉換為 Unicode 字串。

替代資源

了解更多見解關於在JavaScript 中處理二進位數據,您可以參考以下資源:

  • [如何使用Javascript 和XMLHttpRequest 載入二進位影像資料? ](https://stackoverflow.com/questions/3422673 /how-do-i-load-binary-image-data-using-javascript-and-xmlhttprequest)

瀏覽器相容性

雖然大多數現代瀏覽器支援btoa() 和atob(),建議在程式碼中使用它們之前檢查它們的可用性。您可以使用CanIUse 等線上工具來驗證其相容性:

  • [Atob](https://caniuse.com/?search=atob)
  • [Btoa](https : //caniuse.com/?search=btoa)

以上是如何使用 JavaScript 對 Base64 字串進行編碼和解碼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn