比如我这规定了
var my = new Array(3); 下面的三个值就必须是从0到2么?
my[0]=1; my[1]=2; my[2]=3;
若是不从零开始算起
my[4]=5; my[5]=6; my[6]=7; //这也是三个数值,这样写在里面输出也是正确的么?
var my = new Array(3); 你这样只是定义了一个数组,然后让他的长度为3,所以这个数组就有了3个值,[undefined,undefined,undefined],当你赋值时 my[0]=1; 这时数组就变成了[1,undefined,undefined];my[1]=2,这时数组就变成了[1,2,undefined] 。。。。 如果你不从0开始,也就是my[4]=5; 这时数组的长度就从3变成了5,值就变成了[undefined,undefined,undefined,undefined,5] ; my[5]=6时数组的长度就变成了6,[undefined,undefined,undefined,undefined,5,6] ,依此类推。 需要注意的一点就是数组的长度是可以随时改变的。如果你没有赋值的位置的值就是undefined。