美文网首页
js 数组对象去重 一样的value值相加

js 数组对象去重 一样的value值相加

作者: Rascar | 来源:发表于2023-04-10 09:40 被阅读0次
   // let arry = [
        //   { currency: "x", count: 1, cny: "nihao" },
        //   { currency: "x", count: 2, cny: "nihao" },
        //   { currency: "x", count: 3, cny: "nihao" },
        //   { currency: "y", count: 4, cny: "spec1}
        // ];
dataReduceData(arr) {
      return arr.reduce((newArr, item) => {
        //判断新值和旧值是否相同
        const existingItemIndex = newArr.findIndex(v => v.cny === item.cny && v.currency === item.currency)
        if (existingItemIndex !== -1) {
          newArr[existingItemIndex] = {
            ...newArr[existingItemIndex],
            count: newArr[existingItemIndex].count + item.count
          }
        } else {
          newArr.push(item)
        }
        return newArr // [{ currency: "x", count: 6, cny: "nihao" },
                                // { currency: "y", count: 4, cny: "spec1}]
      }, [])
    },

相关文章

网友评论

      本文标题:js 数组对象去重 一样的value值相加

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