问题:
1-js解码与编码是什么意思?
2-为什么要进行编码与解码?
答案:
大家在使用JS提交数据时,尤其是中文的时候,经常会需要将要提交的字符串进行URL编码。然后在展现的时候,在进行解码。
在JS中对字符串进行URL编码有好几种方 例如:
encodeURI,encodeURIComponent,还有escape。下面我们来分别看看这几个函数。
encodeURI:对指定的字符串进行URL编码,不包括 : # / \ = & 这些URL中的关键字符。
encodeURIComponent:对字符串中的字符进行编码,包括URL中的特殊字符。
escape: 这个是JS比较早期版本的函数,这个函数中处理unicode字符的时候会有些问题。
举例:
var url = "http://www.abc.com?q=aa& amp;b=呵呵";
var encodedUrl = encodeURI(url);
alert(encodedUrl);
//输出: http://www.abc.com?q=aa&b=%E5%91%B5%E5%91%B5
encodedUrl = encodeURIComponent(url);
alert(encodedUrl);
//输出: http%3A%2F%2Fwww.abc.com%3Fq%3Daa%26b%3D%E5%91%B5%E5%91%B5
alert(escape(url));
//输出: http%3A//www.abc.com%3Fq%3Daa%26b%3D%u5475%u5475
这里推荐几个在线解码编码的网站:
地址:http://tool.chinaz.com/Tools/Unicode.aspx
地址:http://tool.oschina.net/encode?type=4
地址:http://base64.xpcha.com/