for-in循环与for-of循环的区别

445 阅读1分钟
  1. for-in和for-of都是用来遍历的 ; for-in可以 数组 + 对象
    for-of 只可以遍历数组

  2. for-in 可以遍历原型中的属性; for-of 不可以遍历原型中的属性

  3. 遍历数组时 for-in可以遍历 下标 + 元素 for-of之能遍历元素

总结: 如果想要下标和元素就用for-in, 只想要元素就用for-of

    const arr = [10, 20, 30]
    for(let key in arr) {
      console.log(key)
      console.log(arr[key])
    }

    for(let item of arr) { //只遍历元素
      console.log(item)
    }


    const obj = {
      name: '张三',
      age: 18,
      gender: '男'
    }

    for(let key in obj) {
      console.log(key)
      console.log(obj[key])
    }

    // for(let item of obj) {
      // console.log(item)
    // } 直接报错