Window: atob() 方法

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

Window 接口的 atob() 方法解码使用 Base64 编码的数据字符串。你可以使用 Window.btoa() 方法编码和传输可能导致通信问题的数据,然后传输它并使用 atob() 方法再次解码数据。例如,你可以编码、传输和解码控制字符,例如 ASCII 值 0 到 31。

另外,也可以考虑使用 Uint8Array.fromBase64() 方法,它从 base64 编码的字符串创建一个 Uint8Array 对象。它会生成一个字节数组,比包含原始字节的字符串更容易处理。

语法

js
atob(encodedData)

参数

encodedData

一个 base64 编码的字符串,使用 Window.btoa() 生成的字母表。

返回值

一个包含从 encodedData 解码的原始字节的二进制字符串。JavaScript 中的字符串以 UTF-16 编码,这意味着每个字符的代码点必须小于 256,代表一个字节的数据。

异常

InvalidCharacterError DOMException

如果 encodedData 不是有效的 base64,则抛出。

示例

js
const encodedData = window.btoa("Hello, world"); // encode a string
const decodedData = window.atob(encodedData); // decode the string

有关更多示例,请参阅 Window.btoa() 方法。

规范

规范
HTML
# dom-atob-dev

浏览器兼容性

另见