gpt4 book ai didi

apache-flex - 为什么在 ActionScript 中将日期转换为日期会失败?

转载 作者:行者123 更新时间:2023-12-01 10:59:54 25 4
gpt4 key购买 nike

在 ActionScript 中,我发现,将 Date 转换为 Date 并将其分配给 Date 类型的变量会引发 TypeError:

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.

这显然是错误的,但我想知道为什么会这样。我的理论是 Date 转换与 Number 转换一样,已被覆盖以尝试转换给定类型而不是仅仅转换它。

有趣的是,将任何其他内容转换为 Date 并将其分配给 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)

最佳答案

AS3 有时会非常困惑和不一致。基本上您不会在该代码示例中强制转换任何内容。

AS3 有一些全局的 camelCased 函数,它们将优先于转换运算符。Vector也有类似的全局函数。

当您在不使用 new 运算符的情况下执行 Date(bla) 时,它显然会创建该日期的字符串表示形式...尝试使用 as 运算符进行转换。

关于apache-flex - 为什么在 ActionScript 中将日期转换为日期会失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12068035/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com