zoukankan      html  css  js  c++  java
  • 前端原生js加密解密

    js支持原生的base-64加密解密,加密方法-window.btoa,解密方法-window.atob,但是直接使用这两个方法进行加密解密会出现中文乱码的情况,所以使用以下组合加密解密,可解决问题

    function utf8_to_b64(str) {
        return window.btoa(unescape(encodeURIComponent(str)));
    }
    
    function b64_to_utf8(str) {
        return decodeURIComponent(escape(window.atob(str)));
    }
    
    // Usage:
    utf8_to_b64('✓ à la mode'); // JTI1dTI3MTMlMjUyMCUyNUUwJTI1MjBsYSUyNTIwbW9kZQ==
    b64_to_utf8('JTI1dTI3MTMlMjUyMCUyNUUwJTI1MjBsYSUyNTIwbW9kZQ=='); // "✓ à la mode"
    
    utf8_to_b64('I u2661 Unicode!'); // SSUyNTIwJTI1dTI2NjElMjUyMFVuaWNvZGUlMjUyMQ==
    b64_to_utf8('SSUyNTIwJTI1dTI2NjElMjUyMFVuaWNvZGUlMjUyMQ=='); // "I ♡ Unicode!"
     
  • 相关阅读:
    NOI 模拟赛
    bzoj 4998 星球联盟
    bzoj 4545 DQS 的 Trie
    loj #161 子集卷积
    bzoj 5093 图的价值
    bzoj 4299 Codechef FRBSUM
    NOI 模拟赛
    WC2018 州区划分
    CSP 2020 T2 动物园
    CSP 2020 T1 儒略日
  • 原文地址:https://www.cnblogs.com/LeoXnote/p/14252404.html
Copyright © 2011-2022 走看看