for of 和 for in 的区别

  1. for-of 无法遍历 不可迭代对象

    可迭代对象包括: Array,Map,Set,String,TypedArray,arguments等等

    但for in 可以 

var obj = {
  a: 1,
  b: [],
  c: function () {}
};
for (var key of obj) {
   console.log(key);
}
// 出错:
// Uncaught TypeError: obj is not iterable
var obj = {
  a: 1,
  b: [],
  c: function () {}
};
for (var key in obj) {
   console.log(key);
}
// 结果是:
// a
// b
// c

 

  1. for-of 遍历的是键值,for-in遍历的是键名(key)
    var arr = [3, 5, 7];
    for (var i in arr) {
       console.log(i);
    }
    // 结果是:
    // 0
    // 1
    // 2
    var arr = [3, 5, 7];
    for (var i of arr) {
       console.log(i);
    }
    // 结果是:
    // 3
    // 5
    // 7

     

posted @ 2022-03-14 00:20  椿c  阅读(55)  评论(0)    收藏  举报