js es6 判断数组对象中包含是否含有某个属性值

if (data && data.hasOwnProperty('Rows')) {
        (data.Rows.Row ||[]).map((row) => {
            if (row.hasOwnProperty("Summary")) {
               
            }
        })
    }

hasOwnProperty 就是判断是否含有key 为  Rows 的属性

数据:

 
  "Rows": {
    "Row": [
      {
        "ColData": [
          {
            "id": "4", 
            "value": "Jane Litigious"
          }, 
          {
            "value": ""
          }, 
          {
            "value": ""
          }, 
          {
            "value": ""
          }, 
          {
            "value": ""
          }, 
          {
            "value": "37.50"
          }, 
          {
            "value": "37.50"
          }
        ]
      }, 
      {
        "group": "GrandTotal", 
        "type": "Section", 
        "Summary": {
          "ColData": [
            {
              "value": "TOTAL"
            }, 
            {
              "value": "0.00"
            }, 
            {
              "value": "0.00"
            }, 
            {
              "value": "0.00"
            }, 
            {
              "value": "0.00"
            }, 
            {
              "value": "37.50"
            }, 
            {
              "value": "37.50"
            }
          ]
        }
      }
    ]
  }

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty

可以使用reduce方法来实现这个功能。假设有一个包含多个对象数组,每个对象都有一个相同的属性字段,可以按照以下步骤来实现统计相同属性字段的的和: 1. 使用reduce方法遍历数组,将每个对象属性作为key,属性作为value存储在一个新的对象。 2. 在reduce方法的回调函数,如果当前key已经存在于新对象,则将其对应的value加上当前对象属性,否则将当前key和属性作为新的键对添加到新对象。 3. 最后返回新对象,其每个属性字段的都是原数组对应字段的总和。 下面是一个示例代码: ```javascript const arr = [ { name: 'apple', num: 2 }, { name: 'banana', num: 3 }, { name: 'apple', num: 4 }, { name: 'orange', num: 1 }, { name: 'banana', num: 5 } ]; const result = arr.reduce((acc, cur) => { const key = cur.name; if (acc[key]) { acc[key] += cur.num; } else { acc[key] = cur.num; } return acc; }, {}); console.log(result); // { apple: 6, banana: 8, orange: 1 } ``` 在上面的代码,我们使用reduce方法遍历数组`arr`,并将每个对象的`name`属性作为key,属性`num`作为value存储在新对象`acc`。如果当前key已经存在于新对象,则将其对应的value加上当前对象属性,否则将当前key和属性作为新的键对添加到新对象。最后返回新对象`acc`,其每个属性字段的都是原数组对应字段的总和。 运行上面的代码,将输出一个新对象,其每个属性字段的都是原数组对应字段的总和。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值