for~in语句用于遍历对象,而for~of语句用于遍历数组,但这不是必须的,只是这样操作比较方便。

1.遍历数组
 (1)For-in循环

var arr=[1,2,3,4,5,6,7] //申明一个数组
for(var x in arr){
  console.log("arr["+x+"]="+arr[x] + " "); //x为数组的下标
}


 (2)For-of循环

var arr=[1,2,3,4,5,6,7] //申明一个数组
for(var x of arr){
    console.log(x+ " ");//x为数组的元素,比For-in访问数组操作简单
}

2.遍历对象
(1)For-in循环

var obj={name:'lilin',age:24,sex:'man'} //申明一个对象
for(var x in obj){
   console.log(x+"="+obj[x] + " ");//x为对象属性名,obj[x]为该属性的值
}

(2)For-of循环(es6)

var obj={name:'lilin',age:24,sex:'man'} //申明一个对象
for(var x of Object.keys(obj)){
    console.log(x+"="+obj[x]+" ");//x为对象属性名,obj[x]为该属性的值
}
for(var x of Object.values(obj)){
    console.log(x+"="+obj[x]+" ");//x为对象属性名,obj[x]为该属性的值
}

循环一个字符串
for (let o of str) { console.log(o) // l,o,v,e }
循环map
let iterable = new Map([["a", 1], ["b", 2], ["c", 3]]);
for (let [key, value] of iterable) {
console.log(value); // 1,2,3
}
for (let entry of iterable) {
console.log(entry);
} //
["a", 1], ["b", 2], ["c", 3]
循环set
let iterable = new Set([1, 1, 2, 2, 3, 3]); for (let value of iterable) { console.log(value); } // 1,2,3

 

posted on 2019-11-29 16:13  四月妹  阅读(123)  评论(0编辑  收藏  举报