AS3数组长度错误

时间:2014-11-01 02:18:20

标签: arrays actionscript-3 debugging

我刚刚在数组的长度上发现了这个奇怪的结果。 当表中有一个数字作为输入时,AS3将数组的值作为长度返回,而不是实际长度

例如。

var test_array:Array = new Array(1908);
trace(test_array.length)
//output 1908

但是有多个条目

var test_array:Array = new Array(1908,1909);
trace(test_array.length)
//output 2

有没有人有同样的错误? 如果需要,我们可以在哪里修复它?

1 个答案:

答案 0 :(得分:3)

它不是一个错误

new Array(1908);是一个创建包含1908个字段

的数组的函数

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/Array.html

  

Array(... values)允许您创建包含指定的数组   元素。          Array(numElements:int = 0)允许您创建指定数量元素的数组。

使用as3数组,您最好使用不同的构造函数

而不是var test_array:Array = new Array(1908); 使用var test_array:Array = [1908];

而不是var test_array:Array = new Array(1908,1909); 使用var test_array:Array = [1908,1909];

使用此语法[]代替new Array()的开销更少,而且更快