【问题标题】:How to iterate over array of objects in javascript [duplicate]如何在javascript中迭代对象数组[重复]
【发布时间】:2017-06-14 20:52:48
【问题描述】:

我有一组对象,我必须通过这些对象进行迭代并返回其 isPremium 属性值为 true isPremium === true 的特定对象,我使用了 .forEach.map function 来实现该功能,但我的解决方案不是根据条件过滤,下面是我的数组和我的解决方案,谁能帮忙,提前谢谢

  const brands = [
           {id:1, brand_name: 'adidas', brand_trans: 'أديداس', isPremium: true, url: '/brands/adidas'},
           {id:2, brand_name: 'adidas Originals', brand_trans: 'أديداس اوريجينال', isPremium: false, url: '/brands/adidas-originals'},
           {id:4, brand_name: 'Bodyism', brand_trans: 'بودييزم', isPremium: false, url: '/brands/bodyism'},
           {id:5, brand_name: 'Columbia', brand_trans: 'كولومبيا', isPremium: false, url: '/brands/columbia'},
           {id:5, brand_name: 'Converse', brand_trans: 'كونفرس', isPremium: true, url: '/brands/converse'},
         ];

解决方案

         var premiumHeader = brands.map(function(item, index) {
            for( var key in item ) {
             return item.isPremium !== false;
           }
         });

         premiumHeader;

【问题讨论】:

  • 您正在寻找.filter().find()
  • 如果要过滤元素,请使用.filter
  • 发帖前请search。更多关于搜索here
  • 我必须遍历对象数组并返回 isPremium 值为 true 的对象 SLaks
  • 将 .map 更改为 .filter - codepen.io/nagasai/pen/pwEQoj 供参考

标签: javascript arrays


【解决方案1】:

试试Array.filter函数:

var premiumItems = brands.filter( item => item.isPremium );

【讨论】:

    猜你喜欢
    • 2017-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多