【Js】链接里的中文参数的转码和解码

一个链接上的参数需要包含中文以及各种特殊字符,这个链接如何生成以及如何获得链接上的参数?

1.使用encodeURIComponent方法将该参数转码后拼接到链接上
    
2.获取参数,decodeURIComponent()解码即可

为什么使用encodeURIComponent而不用另外两个
1.escape已废弃,实际使用中发现,ios无法unescape()解码。
2.encodeURI不会把# &转码,参数有这两种字符时,在取参数时会取不全。

escape方法不会对 ASCII 字母和数字进行编码,也不会对下面这些 ASCII 标点符号进行编码: * @ - _ + . / 。其他所有的字符都会被转义序列替换。
encodeURI方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。

该方法的目的是对 URI 进行完整的编码,因此对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() 函数是不会进行转义的:;/?:@&=+$,#

你可能感兴趣的:(javascript前端)