吾知网

标题: AS3 处理URL编码转换 [打印本页]

作者: jekeyhui99    时间: 2015-10-30 09:45
标题: AS3 处理URL编码转换
参考资料:
encodeURI encodeURIComponent escape区别
http://yunzhongxia.iteye.com/blog/1126873
AS3中的encodeURI,encodeURIComponent,decodeURI以及decodeURIComponent
http://bbs.9ria.com/thread-71-1-1.html






把字符串转为URL编码时,会自动把其大部分的非字母数字的字符替换为%十六进制序列。


URL常用地方--路径
最常见的是中文路径,编码URL时,会自动转为%十六进制序列。
而转换解码则用全局函数encodeURI和decodeURI。


var str:String = "中文字符";

var encodeStr:String = encodeURI(str)
var decodeStr:String = decodeURI(encodeStr);
trace(encodeStr);//输出:%E4%B8%AD%E6%96%87%E5%AD%97%E7%AC%A6
trace(decodeStr);//输出:中文字符

var escapeStr:String = escape(str)
var unescapeStr:String = unescape(escapeStr);
trace(escapeStr);//输出:%u4E2D%u6587%u5B57%u7B26
trace(unescapeStr);//输出:中文字符

trace(unescape(encodeStr));//输出:????????????(乱码)
trace(decodeURI(escapeStr));//报错:URIError: Error #1052: 传递给 decodeURI 函数的 URI 无效。


以上测试用例说明,encodeURI、decodeURI 和 escape、unescape 是不可互换的,否则会乱码或报错。









欢迎光临 吾知网 (http://5g99.com/bbs/) Powered by Discuz! X3.2