我正试图收到警告:
var foo = 0;
没有类型声明。在高级Actionscript 3.0设置中,我选中了严格模式和警告模式。有什么我想念的吗?
奇怪的是,重复的变量定义会显示为警告。
Flash版本11.5.0.325谢谢
答案 0 :(得分:0)
声明本身不会抛出错误。当你没有在变量定义中声明类型时,即使启用了严格模式,也不会消除类型检查,只是将它推迟到运行时而不是编译时。以下是一些像您这样的示例代码:
function typeTest(xParam:Array)
{
trace(xParam);
}
var myNum = 3;
typeTest(myNum);
// run-time error in ActionScript 3.0
即使在严格模式下仍然可以编译。严格模式背后的想法是,您可以在编写代码时利用Actionscript 3的严格类型功能,因此在编译时而不是运行时捕获更多错误。如果你不使用这些能力(不严格在代码中输入你的变量)那么它对你没用。有关此问题的完整文档,请参阅以下链接: