·您当前的位置:首页 > 技术教程 > AS2与AS3技术 >

[AS3]最常见编程错误代码的说明附实例介绍(9)

时间:2012-09-05 10:20CuPlayer
1200 语法错误:for-in 初始值无效,只能有 1 个表达式。 1201 this、super、return 或 throw 语句之后不能出现 super 语句。 1202 访问未定义的属性 _(属于包 _)。 正在试图访问包中未定义的变量。例如,如果尚

1200
语法错误:for-in 初始值无效,只能有 1 个表达式。
1201
this、super、return 或 throw 语句之后不能出现 super 语句。
1202
访问未定义的属性 _(属于包 _)。
正在试图访问包中未定义的变量。例如,如果尚未定义变量 p.huh,调用该变量时会生成此错误: p.huh = 55;
仅当编译器在严格模式下运行时,才会出现此错误。
1203
在基类 _ 中未找到默认构造函数。
如果有 1 个或多个必选参数,则必须使用 super() 语句显式调用基类的构造函数。
1204
/* 无对应匹配项 */ .
发现了指示注释开始位置的字符“/*”,但未发现指示注释块结束位置的对应字符“*/”。
1009 _“_”没有类型声明。 不声明数据类型是一种个人编码风格偏好。函数的返回类型、参数或变量没有类型声明。但如果使用类型声明,编译器就可以编写出更为有效的代码并且在编译时检测到更多的错误。如果要在无法使用类型声明时得到提示,可以启用此警告。
1013 类型为 _ 的变量不能为 undefined。比较之前,undefined 值将是强制为 _ 的类型。 只有类型为 * 的变量才能为 undefined。未初始化的变量的默认值是 null(而不是 undefined),但有几种例外情况。例外包括:Boolean 变量,其默认值为 false。Number 变量的默认值为 NaN;int 或 uint 变量的默认值为 0。
1031 迁移问题:新 _ 的结果将是 _ 的返回值,而不是该函数的新实例。这是一个代码迁移警告。在 Actionscript 3.0 和 Actionscript 2.0 中,检测到的代码具有不同的行为,如下面的示例所示:
function f(){
this.b = 22;
this.a = new Array(2);??
this.a[0] = 33;
this.a[1] = 44;
return a;
}
// 在 Actionscript 2.0 中返回 f 的一个新实例,在 Actionscript 3.0 中返回一个由两个元素组成的新数组
var d = new f();?? // 此处将出现警告
trace(d.a); // 在 Actionscript 3.0 中未定义,在 Actionscript 2.0 中为 [33,44]
1035 使用了没有参数的 Boolean()。 这是一个代码迁移警告。Boolean() 函数在 Actionscript 3.0 中返回 false,但在 Actionscript 2.0 中返回 undefined。
1039 迁移问题:使用空字符串参数调用 Number('') 函数时,它将在 Actionscript 3.0 中返回 0,而在 Actionscript 2.0 中返回 NaN。 这是一个代码迁移警告。使用 String 参数调用的 Number() 方法会跳过该字符串中的所有空白,并在检测不到数字时返回默认值 0。在 Actionscript 2.0 中,该字符串中的任何空白都会导致结果为 NaN。
1045 迁移问题:Null 元素和 undefined 元素的 Array.toString() 处理已更改。这是一个代码迁移警告。在 Actionscript 2.0 中,null 数组元素转换为 null,而 undefined 元素转换为 undefined。在 Actionscript 3.0 中,null 和 undefined 元素都转换为空字符串 ''。如果您的代码分析了 Array 中的 toString() 输出,您可能需要针对这两种情况的区别对代码进行调整。
1059 迁移问题:不再支持属性 _。_。 这是一个代码迁移警告。您正在尝试使用的属性未存在于 Actionscript 3.0 中。
1061 迁移问题:不再支持方法 _。_。 这是一个代码迁移警告。Actionscript 3.0 中不存在您正在尝试使用的方法。
1066 不再支持 __resolve。
1067 迁移问题:不再支持 __resolve。为了获得类似功能,请使用新的 Proxy 类。 这是一个代码迁移警告。有关替换 __resolve 的详细信息,请参阅本语言参考中的 Proxy。
1071 迁移问题:不再支持 _level。有关详细信息,请参阅 flash.display 包。 这是一个代码迁移警告。您正在尝试使用的属性未存在于 Actionscript 3.0 中。
1073 迁移问题:_ 不是动态类。不能以动态方式向实例中添加成员。 这是一个代码迁移警告。在 Actionscript 2.0 中,许多类(如 Number)是动态的,这意味着可以在运行时向这些类的实例中添加新属性。如果代码尝试向非动态类的实例中添加属性,则会产生此警告。
1083 迁移问题:由于 this 关键字范围的变化,方法 _ 在 Actionscript 3.0 中将有不同的行为。有关其它信息,请参阅有关警告 1083 的条目。 这是一个代码迁移警告。将对象的方法作为值(通常是回调函数)使用时,将会生成此警告。在 Actionscript 2.0 中,在调用函数的上下文中执行函数;在 Actionscript 3.0 中,总是在定义函数的上下文中执行函数。因此,变量和方法的名称将被解析为回调函数所属的类,而不是与调用该函数的上下文有关的类,如下面的示例所示:
class a
{
var x;
function a() { x = 1; }
function b() { trace(x); }
}
var A:a = new a();
var f:Function = a.b; // 此处将触发警告
var x = 22;
f(); // 在 Actionscript 3.0 中输出 1,在 Actionscript 2.0 中输出 22
1085 _ 的范围将是默认命名空间 _ 的内部。它在此包之外不可见。不声明命名空间是一种个人编码风格偏好。如果要在忘记声明定义的命名空间或访问说明符时得到提示,可以启用此警告。如果没有命名空间或访问说明符,该定义对于此文件之外的代码是不可见的。要使该定义对于此文件之外的代码是可见的,请使用访问说明符 public 或命名空间声明对该定义进行声明。要使该定义的作用范围仅限于此文件并避免生成此警告,请将该定义声明为 private。
1087 迁移问题:Actionscript 3.0 以随机顺序在一条“for x in target”语句之内迭代对象的属性。这是一个代码迁移警告。在 Actionscript 2.0 中,对象属性的处理顺序始终不变。在 Actionscript 3.0 中,该顺序是随机的,可因计算机而异。如果出现意外的排序行为,请检查此循环,以确定此行为更改是否会影响代码。
1089 错误代码:_。 这是由于源文件遭到破坏或编译器代码中出现错误造成的。请与 Adobe, Inc. 联系,以便将错误登记备案。

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器