2011-10-05 129 views
0

这里是测试1在javascript中填充数组,这两种方法有什么区别?

array_one = []; 
array_one[1] = 'image1.jpg'; 
array_one[2] = 'image2.jpg'; 
array_one[3] = 'image3.jpg'; 

的代码和测试2

array_two = ['image1.jpg', 'images2.jpg', 'images3.jpg']; 

的代码为什么第一个工作......,另一个在不...其实我 我正在寻找一个解决方案来填充数组,而不必分配索引。

注:不谈论了[0]索引,我只是不使用它...

+1

通常你想从索引'0'开始,n ot'1' ... –

+0

第二个是有效的 - 就是这样做的方法。 –

+0

如果你想填充一个数组而不必自己指定索引,你也可以使用'array_one.push('image4.jpg');'如果这就是你所说的......有点含糊 – CharlesLeaf

回答

0

试试这样说:

var array_two = ['','image1.jpg', 'images2.jpg', 'images3.jpg']; 
alert(array_two); 

除非你有以下设置,并在没有写

var array_two = new Array(); 
+0

我没有:var array_two = new Array();但我声明了var:var array_two = []它是一样的吗? – menardmam

+0

不,设置variable_name = []不会声明名称前没有'var'的数组。所以,你需要用'var array_two = new Array();'声明它。在填充数组之前或在填充数组时声明它为var。 – Biotox

2

索引是从零开始的。

array_two = ['image1.jpg', 'images2.jpg', 'images3.jpg']; 
array_two[0] 
=> "image1.jpg" 

,你也有一个语法错误,应该是

array_one[1] = 'image1.jpg'; 
=> "image1.jpg" 
相关问题