前端常见各种解码编码整理-v1

encodeURI/encodeURIComponent, decodeURI/decodeURIComponent

至于这两个有什么区别,可以自行了解这里就不说了;

  • 编码
encodeURI('汉字') 
// "%E6%B1%89%E5%AD%97"
  • 解码
decodeURI("%E6%B1%89%E5%AD%97")
//汉字

base64 编解码

  • 编码 btoa(string);
btoa('汉字') //提示超出Latin1, 不能直接这样使用需要 encodeURI 
btoa(encodeURI('汉字'))

在这里插入图片描述

  • 解码 atob(string)
decodeURI(atob('JUU2JUIxJTg5JUU1JUFEJTk3'))

前端常见各种解码编码整理-v1_第1张图片

图表代码

  • ‘string’.charCodeAt(index)
  • String.formCharCode(number)
    前端常见各种解码编码整理-v1_第2张图片
    案例设想:需要固定每个人姓名的结果情况,比如说运势测试,姓名的code唯一不变;

TextEncoder, TextDecoder

var ec = new TextEncoder()
var dc = new TextDecoder()
var rst = ec.encode('汉字')//Uint8Array(6) [230, 177, 137, 229, 173, 151]
dc.decode(rst)
//汉字

前端常见各种解码编码整理-v1_第3张图片
欢迎大家提出补充

你可能感兴趣的:(html5,javascript,编码)