ES6 使用for..of遍历数组和对象

es6新加了遍历方法for..of,今天看看怎么使用

一、遍历数组

1,直接使用for..of遍历数组

let arr=['red','green','blue','orange'];
for(let val of arr){
  console.log(val);//red,green,blue,orange
}

可以看到直接打印出了数组中的各个值。

那么怎么通过for...of把索引打印出来呢?

可以这样:

let arr=['red','green','blue','orange'];
for(let index of arr.keys()){
  console.log(index );//0,1,2,3
}

还可以这样:

let arr=['red','green','blue','orange'];
for(let item of arr.entries()){
  console.log(item[0]);//red,green,blue,orange
}

能否把数组索引和值一块打印出来呢?

let arr=['red','green','blue','orange'];
for(let [key,val] of arr.entries()){
  console.log(key,val);
}

是不是很简单^_^

二、遍历对象

for...of不能只直接遍历普通JavaScript对象,可以通过Object.values遍历对象的属性值,也可以通过Object.keys遍历对象的属性,最后可以通过Object.entries通过遍历对象的属性和属性值,

实现如下:

1,通过Object.values遍历对象的属性值

let param = {
    name: "zhangsan",
    age: 21,
    sex: "male"
};

//遍历对象的属性值
for (let value of Object.values(param)) {
     console.log(key);//zhangsan,21,male
}
 2,通过Object.keys遍历对象的属性
let param = {
        name: "zhangsan",
        age: 21,
        sex: "male"
    };

for (let key of Object.keys(param)) {
     console.log(key);//name,age,sex
}

  3,通过Object.entries可以同时遍历对象的key和value

let param = {
        name: "zhangsan",
        age: 21,
        sex: "male"
    };

for (let [key,value] of Object.entries(param)) {
     console.log(key,value);//name "zhangsan", age 21, sex "male"
}
 

通过上面的总结发现for...of真的很强大很好用...

发布了54 篇原创文章 · 获赞 0 · 访问量 7732

猜你喜欢

转载自blog.csdn.net/yuyongkun4519/article/details/84924466