代码改变世界

js字符串与Unicode编码互相转换

2017-05-16 16:30  改吧  阅读(44081)  评论(9编辑  收藏  举报
''.charCodeAt(0).toString(16)
"597d"

这段代码的意思是,把字符'好'转化成Unicode编码,toString()就是把字符转化成16进制了

看看charCodeAt()是怎么个意思

charCodeAt() 方法可返回指定位置的字符的 Unicode 编码。这个返回值是 0 - 65535 之间的整数。

等于就是'charCodeAt()'里面的这个参数是指定位置的单个字符,

'好哦'.charCodeAt(0).toString(16)
"597d"
'好哦'.charCodeAt(1).toString(16)
"54e6"

上面这段代码就可以看出,一个字符串你想要知道单个字符的编码,就是靠里面的这个参数,也就是索引

 

 

要是想把unicode解码成字符呢?

要想对Unicode解码的话,必须要用转义字符'\u'

'\u54e6'
""

 

 

说完unicode跟字符互相转义以外

就是讲讲实质性的概念吧

js unicode是以十六进制代码外加开头\u表示的字符串。即\unnnn

Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。1990年开始研发,1994年正式公布。[1]