### 直接上代码
关于js编码转化的原生方法

var encodedData = btoa('Hello, world'); // encode a string
var decodedData = atob(encodedData); // decode the string
function utoa(str) {return window.btoa(unescape(encodeURIComponent(str)));
}
// base64 encoded ascii to ucs-2 string
function atou(str) {return decodeURIComponent(escape(window.atob(str)));
}
// 使用:
utoa('✓ à la mode'); // 4pyTIMOgIGxhIG1vZGU=
atou('4pyTIMOgIGxhIG1vZGU='); // "✓ à la mode"utoa('I \u2661 Unicode!'); // SSDimaEgVW5pY29kZSE=
atou('SSDimaEgVW5pY29kZSE='); // "I ♡ Unicode!"

总结一下

  • btoa 将普通字符串转化为base64编码
  • atou base64编码转化为普通字符串
  • escape 可对字符串进行编码
  • unescape 可对字符串进行解码
  • encodeURIComponent(URIstring) 把字符串作为URI组件进行编码。
    • URIstring 必需。一个字符串,含有URI组件或其他要编码的文本。
  • decodeURIComponent 把字符串作为URI组件进行解码。
    • URIstring 必需。一个字符串,含有URI组件或其他要编码的文本。

注:关于URL和URI的区别可以看看这个。

原生js支持的编码转换方法相关推荐

  1. 进一步封装axios并调用其读取数据(吐槽~在安卓9.0以下或者IOS10.X以下手机端H5页面不支持,在这两种情况下的系统只能使用ajax或者原生js请求后台数据)

    注意!!!(修改于2020年7月18日) 在安卓9.0以下或者IOS10.X以下手机端H5页面不支持,在这两种情况下的系统只能使用ajax或者原生js请求后台数据 报错截图如下 报错内容: {&quo ...

  2. [完美]原生JS获取浏览器版本判断--支持Edge,IE,Chrome,Firefox,Opera,Safari,以及各种使用Chrome和IE混合内核的浏览器...

    [完美]原生JS获取浏览器版本判断--支持Edge,IE,Chrome,Firefox,Opera,Safari,以及各种使用Chrome和IE混合内核的浏览器 原文:[完美]原生JS获取浏览器版本判 ...

  3. js原生ajax跨域请求,封装一个原生js的ajax请求,支持IE9CORS跨域请求

    前言 关于纯js的ajax请求,我之前有文章写过, https://www.haorooms.com/post/js_ajax_chun , 关于CORS跨域资源共享,我也有文章写过, https:/ ...

  4. 原生ajax如何跨域,封装一个原生js的ajax请求,支持IE9CORS跨域请求

    前言 关于纯js的ajax请求,我之前有文章写过,https://www.haorooms.com/post/js_ajax_chun, 关于CORS跨域资源共享,我也有文章写过,https://ww ...

  5. html5支持原生js,HTML5怎么学原生的js?让你对前端有了新的认识

    原标题:HTML5怎么学原生的js?让你对前端有了新的认识 已经学习了HTML5两个月,第一个月主要学习HTML和CSS,第二个月学完了原生的js,学完原生的js后对前端有了新的认识,了解了前端并不是 ...

  6. vue如何使用原生js写动画效果_原生js写一个无缝轮播图插件(支持vue)

    轮播图插件(Broadcast.js) 前言:写这个插件的原因 前段时间准备用vue加上网易云的nodejs接口,模拟网易云音乐移动端.因为想自己写一遍所有的代码以及加固自己的flex布局,所以没有使 ...

  7. html怎么引轮播图插件,原生js写一个无缝轮播图插件(支持vue)

    轮播图插件(Broadcast.js) 前言:写这个插件的原因 前段时间准备用vue加上网易云的nodejs接口,模拟网易云音乐移动端.因为想自己写一遍所有的代码以及加固自己的flex布局,所以没有使 ...

  8. 原生js实现大屏数字上下滚动效果,支持随机多位数字

    一文看懂大屏数字滚动 前言 一.html 二.js生成展示的元素 三.css实现样式 四.加入动画和定时器 前言 在大屏项目中经常需要实现那种数字上下滚动的效果,普通的数字随机滚动在UI组件(例如Vi ...

  9. 原生JS封装Ajax插件(同域jsonp跨域)

    2019独角兽企业重金招聘Python工程师标准>>> 抛出一个问题,其实所谓的熟悉原生JS,怎样的程度才是熟悉呢? 最近都在做原生JS熟悉的练习... 用原生Js封装了一个Ajax ...

最新文章

  1. mongodb导入bson文件_Python爬虫进阶教程(七):MongoDB数据库
  2. tx2 numba opencv
  3. 规范化的递归转换成非递归
  4. Hash Function
  5. 详解 Cookie 纪要(vue.cookie,jquery.cookie简化)
  6. Home_W的握手问题(思维+打表)
  7. 使用 Python 进行双重退火优化
  8. laravel中修改默认时区
  9. SCI期刊名英文缩写查询
  10. 手机游戏开发工程师培训教程
  11. java计算机毕业设计基于安卓/微信小程序的健身房健身管理系统
  12. css3 3d 过 锯齿,css3 3d旋转 出现锯齿_html/css_WEB-ITnose
  13. 微信小程序map地图轨迹回放的问题
  14. C#/音乐播放器/带进度条/歌词滚动、颜色变化/桌面应用程序设计
  15. 只有手机号或者身份证能查出来绑定QQ号码?大神请赐教
  16. gitlab密码忘了怎么办?
  17. 微信朋友圈投票刷票脚本实现分析
  18. 突破安全狗和360网站卫士
  19. RIGOL示波器编程使用
  20. 马云说完新零售,范驰开讲新店商

热门文章

  1. 用Python来跳本草纲目!
  2. Linux C语言中的IO--标准IO
  3. FFmpeg 学习:FFmpeg 学习整理总结
  4. 未制卡的情况下,申请社会保障卡的步骤。
  5. python画地球仪_如何用 Python 制作地球仪?
  6. 如何测试电脑软件重复或多,如何快捷找出电脑内的重复文件(两个工具)
  7. 精细化财务管理案例-蒙牛
  8. 工程坐标转换方法C#代码实现
  9. cad无法安装_安装失败、弹窗错误!Autodesk都是娇气的主...(CAD/MAX完美安装工具)...
  10. 13.Shell之sed