js的for in循环
js的forin循环js中for循环完,i=5,forin循环不是从a5输出了吗?如果forin循环的变量不管用(i),那么请问他的作用是什么呢?...
js的for in循环js中for循环完,i=5,for in循环不是从a5输出了吗?如果for in循环的变量不管用(i),那么请问他的作用是什么呢?
展开
1个回答
展开全部
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
例如for (key in obj),每次遍历key都会被赋值成对象obj的一个键名,{a:1,b:2}遍历过程key依次为a和b对于数组,key取得是数组下标
所以你这里遍历的是个数组,i的值分别是数组的下标,用for in遍历数组可能会由于数组增加可枚举的成员而变得不准确
你可以试一下在你的代码前加上
Array.prototype.a = 123;
再运行看下结果就有问题了,不要用for in 遍历数组用forEach
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询