for in 和for of

 一、for in 方法

 a.for in 循环对象

var data = {name:'mcYang0929',age:'25',sex:'man'};
 
for(var key in data) {
    console.log(key);             //属性名(key)
    console.log(data[key]);       //属性值(value)
}


b.for in 循环数组

var arr = ['React','CSS','HTML'];
 
for(var x in arr ){
    console.log(x);              //在数组中的位置(index)
    console.log(arr [x]);        //数组的值
};  

使用for in可以遍历数组,但是会存在以下问题:

1.index索引为字符串型数字,不能直接进行几何运算

2.遍历顺序有可能不是按照实际数组的内部顺序

3.使用for in会遍历数组所有的可枚举属性,包括原型

二、for of 方法(ES6)

var newArray=[1,2,4,5,6,7];
for (var value of newArray) {
  console.log(value);
}

注:for in 遍历的是数组的索引(即键名key),而for of遍历的是数组元素值(即value),综上,建议for in循环对象,for of循环数组

————————————————
版权声明:本文为CSDN博主「mcYang0929」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/mcYang0929/article/details/83312548

你可能感兴趣的:(for in 和for of)