怎么在javascript里定义数组并用for循环赋值

JavaScript020

怎么在javascript里定义数组并用for循环赋值,第1张

1、定义数组

var arr1 = []//通过[]方式定义一个数组

var arr2 = new Array(2)//通过Array对象定义一个数组

2、for循环赋值

for(var i=0i<arr2.lengthi++){//循环数组

   arr2[i] = i//为arr2赋每个数组元素赋值

   arr1[i]=i//往arr1中赋数组初始值

}

for in循环中每次循环都会将对象的key赋值

例如for (key in obj),每次遍历key都会被赋值成对象obj的一个键名,{a:1,b:2}遍历过程key依次为a和b对于数组,key取得是数组下标

所以你这里遍历的是个数组,i的值分别是数组的下标,用for in遍历数组可能会由于数组增加可枚举的成员而变得不准确

你可以试一下在你的代码前加上

Array.prototype.a = 123

再运行看下结果就有问题了,不要用for in 遍历数组用forEach

你把下面的x 换成 i, 依然是5.

这个很正常。

逻辑:

for循环里面,循环的值为 0 1 2 3 4

i的值 为 0 1 2 3 4 5

第一个i,是同一个i ,所以是5.

下面的x 是for循环里的值,i 的最大值还是5.