js中字符串的加密base64

base64编码主要用在传输,存储表示二进制的领域,还可以进行加密和解密。其实就是字符串的编码和解码

 

btoa与atob

只能加密ascii,不能加密汉字。

 var str = 'I LOVE YOU';
    //加密btoa
    var jiaMi = btoa(str);
    alert(jiaMi) ; //结果为SSBMT1ZFIFlPVQ==
    //加密 atob
    var jieMi = atob(jiaMi);
    alert(jieMi)

encodeURIComponent与decodeURIcomponent

只能将中文加密,不可以加密ascii

加密时 可以先将中文加密,然后再用btoa加密

解密时可以先将ascii解密,然后再将非ascii解密

 var str = 'i love中国';
    //加密encodeURIcomponent
    var jiaMi = encodeURIComponent(str);
    alert(jiaMi) ; //结果为i%20love%E4%B8%AD%E5%9B%BD ,你会发现英文字母没有加密
    var jiaM = btoa(jiaMi);
    alert(jiaM) ; //结果为aSUyMGxvdmUlRTQlQjglQUQlRTUlOUIlQkQ=

    //解密,先用atob解密ascii码,然后再用decodeURIComponent
    var jieMi = atob(jiaM);
    var jieM = decodeURIComponent(jieMi);
    alert(jieM)

 

转载于:https://www.cnblogs.com/sticker0726/p/10925621.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值