代码之家  ›  专栏  ›  技术社区  ›  TJBlackman

将jQuery的.each转换为Javascript的.forEach

  •  1
  • TJBlackman  · 技术社区  · 6 年前

    在jQuery中,我可以这样做:

    var books = [
        {name: 'Book 1', author: 'John Wriggly', pages: 9},
        {name: 'Book 2', author: 'James Wriggly', pages: 500},
        {name: 'Book 3', author: 'Jacob Wriggly', pages: 52}
    ]; 
    
    $(books).each(function(index, item){
        console.log(item.name); // works! 
    }); 
    

    var books = [
        {name: 'Book 1', author: 'John Wriggly', pages: 9},
        {name: 'Book 2', author: 'James Wriggly', pages: 500},
        {name: 'Book 3', author: 'Jacob Wriggly', pages: 52}
    ]; 
    
    books.forEach(function(index, item){
        console.log(item.name); // undefined :(
    })
    

    所有属性都不起作用。作者、页数等。。。。我错过了什么?

    编辑

    1 回复  |  直到 6 年前
        1
  •  2
  •   Mittal Patel    6 年前

    books.forEach(function(item, index){
        console.log(item.name);
        console.log(index);
    });