JavaScript 原生提供兩個 Base64 相關的方法:編碼
btoa()
:任意值轉爲 Base64 編碼atob()
:Base64 編碼轉爲原來的值注意:這兩個方法不適合非 ASCII 碼的字符,會報錯。
要將非 ASCII 碼字符轉爲 Base64 編碼,必須中間插入一個轉碼環節:
Base64 編碼轉爲原來的值時,一樣須要轉碼:
encodeURIComponent()
方法的逆運算。示例:
const str = "Hello, world!"; const strToBase64 = btoa(encodeURIComponent(str)); console.log(strToBase64); // SGVsbG8lMkMlMjB3b3JsZCE= const base64ToStr = decodeURIComponent(atob(strToBase64)); console.log(base64ToStr); // Hello, world!