美文网首页
js里 for of 和 for in的区别分析

js里 for of 和 for in的区别分析

作者: 写代码的猫叔 | 来源:发表于2019-10-13 00:27 被阅读0次

    for of 不能遍历对象,for in 可以

    对比两段对象的遍历代码

    for in

    let b = {m: 1,n: 2,p: 3,q: 4}
    
    for (let i in b) {
      if (i == "p") {
        break
      }
      console.log(i,b[i]);
    }
    

    运行结果为:

    m 1
    n 2
    

    for of

    let b = {m: 1,n: 2,p: 3,q: 4}
    
    for (let i of b) {
      if (i == "3") {
        break
      }
      console.log(i,b[i]);
    }
    

    运行则会报错


    两者都可以遍历数组,for in 可以遍历出键和值,for of 只能遍历出值

    对比两段数组的遍历代码

    for in

    let a = ['c', 'd', 'e', 'f']
    for (let i in a) {
      if (i == 2) {
        break
      }
      console.log(i,a[i]);
    }
    

    运行结果为:

    0 c
    1 d
    

    for of

    let a = ['c', 'd', 'e', 'f']
    
    for (let i of a) {
      if (i == "e") {
        break
      }
      console.log(i);
    }
    

    运行结果为

    c
    d
    

    相关文章

      网友评论

          本文标题:js里 for of 和 for in的区别分析

          本文链接:https://www.haomeiwen.com/subject/kmtkuctx.html