在ActionScript中,我发现,铸造日期的日期并将其分配给一个日期类型的变量抛出一个TypeError:为什么在ActionScript中将日期转换为日期失败?
var date : Date = Date(new Date(2012, 01, 01));
Error #1034: Type Coercion failed: cannot convert "Wed Aug 22 17:06:54 GMT+1000 2012" to Date.
这显然是错误的,但我想知道为什么发生。我的理论是,日期转换,如数字转换,已被覆盖,试图转换给定的类型,而不是只是施放它。
有趣的是,铸造其他任何一个日期,并将其分配给一个日期也将失败:
var date : Date = Date("1/2/3");
var date : Date = Date(123);
// (Both fail)
但其分配给对象成功:
var object : Object = Date(new Date(2012, 01, 01));
var object : Object = Date("1/2/3");
var object : Object = Date(123);
// (All succeed)
小心数组转换:'var a:Array = Array([1,2,3])'将创建一个新的数组,其中包含数组''1,2,3]'作为其第一个也是唯一的元素。铸造只能这样做:'var a:Array = [1,2,3] as Array' – RIAstar
啊,谢谢,这解释了它。这些全局功能是否有文档? –
从这里开始,有一个DL'able拉链,但他们埋葬的东西。寻找“顶级”对象。它本质上是主要的,但11.2或11.3播放器添加了一个基本的JSON对象。 http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/index.html –