JS 浏览器原生代码就可以实现 Base64 的编码与解码

970 阅读1分钟

编码

btoa('Minecraft')
// result: TWluZWNyYWZ0

解码

atob('TWluZWNyYWZ0')
// result: Minecraft

浏览器原生就支持了 Base64 的编码与解码,是不是很方便🙃。
但是有两点是需要注意的:

1、这俩函数只能编码和解码 Latin1(拉丁文,是 ISO-8859-1 的别名)格式编码的字符,其编码范围是 0x00-0xFF(ASCII:0x00-0x7F ),超出这个范围的将报“字符越界”错误提示。

2、这个方法是 Web API 中内容,也就是说,该功能是浏览器自己实现的,并不是 JS 的原生规范。所以不能直接用在 Node 当中。

参考:
1、张鑫旭:原来浏览器原生支持JS Base64编码解码
2、MDN:Base64的编码与解码
3、百度百科:Latin1