在英文开发环境,未必容易察觉,因为AS1/2 escape()和AS3 escape() return相同结果,但是在double-byte文字,AS3 escape()终于跟JavaScript的做法相同,如果你要以前AS1/2的格式,你要用encodeURI()或者encodeURIComponent()。

ActionScript 1/2

var a:String = "香港:";
trace(escape(a)); // %E9%A6%99%E6%B8%AF%3A


ActionScript 3

var a:String = "香港:";
trace(escape(a)); // %u9999%u6E2F%3A
trace(encodeURI(a)); // %E9%A6%99%E6%B8%AF:
trace(encodeURIComponent(a)); // %E9%A6%99%E6%B8%AF%3A


JavaScript

var a = "香港:";
alert(escape(a)); // %u9999%u6E2F%3A
alert(encodeURI(a)); // %E9%A6%99%E6%B8%AF:
alert(encodeURIComponent(a)); // %E9%A6%99%E6%B8%AF%3A

2009/11/17