当我运行程序时,我收到以下错误(没有报告编译器错误):
ReferenceError: Error #1069: Property 20 not found on Number and there is no default value.
at src.shared.campaign.ships::ShipClasses$cinit()
at global$init()[docs\src\shared\campaign\ships\ShipClasses.as:4]
这是我第一次遇到这个错误。 ShipClasses.as
是一个包含静态常量和方法的类定义。常量是包含String
和uint
数据类型以及嵌套数组的数组。我只是不知道从哪里开始寻找错误。
答案 0 :(得分:0)
虽然代码有助于查明确切的问题。但是,错误告诉我们在ShipClasses.的第4行中,您正在访问类型为Number
的对象上名为“20”的属性。因为,Number
没有任何此类属性,因此错误。
答案 1 :(得分:0)
问题是我在嵌套数组的静态常量定义中省略了逗号,因此运行时错误将数组元素转换为数字属性:
static const CONST:Array = [20,16 [20,18]];
更正代码:static const CONST:Array = [20,16,[20,18]];
当然,这是该问题的简化示例。实际的阵列要大得多,编号大约有40个定义。因此很难识别,特别是因为当存在$ cinit运行时错误时没有给出行号。
有人知道如何在这种情况下找到行号吗?