Javascript 自带简单解密算法Base64,window.btoa和window.atob使用详解

介绍

window.atob( String )        将一个字符串编码为一个Base64字符串。

window.btoa( String )        解码一个Base64字符串。

用法

只有字符串才能被转换,支持转换 ASCII字母和数字,但不支持中文

基本用法

// 转base64
var a = btoa("abcde");
// 转码结果 "YWJjZGU="

// 解码结果
var b  = atob(a);
// 解码结果 "abcde"

// 注意,如果想转换中文会直接报错,具体方法见下文
// 中文转换base64
var c = btoa("你好啊");
// 直接报错 VM275:1 Uncaught SyntaxError: Invalid or unexpected token

 

中文转换方法

// 先将中文转换为URL组件格式,再转为base64形式的
var d = btoa(encodeURIComponent("哈哈"));
// 结果 "JUU1JTkzJTg4JUU1JTkzJTg4"

// 注意解析时就需要先解码为URL组件格式,再转换为中文,就是先进后出的原则
var ff = decodeURIComponent(atob(d));
// 结果 "哈哈"
 

 

浏览器兼容性

 DesktopMobile
 ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
atob支持支持部分支持10以上支持支持支持支持支持未知4以上支持未知支持未知

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值