账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    js同一个数组对象怎么判断对象里面的值相同去重组一个新数组对象?
    52
    0
    如下有一个数组对象:const arr = [ { secondType: "原料成本", templateKey: "ratio", templateSort: 0, templateValue: '10%', thirdType: "原料成本总计" }, { secondType: "原料成本", templateKey: "cost", templateSort: 0, templateValue: "5", thirdType: "原料成本总计" }, { secondType: "原料成本", templateKey: "ratio", templateSort: 1, templateValue: null, thirdType: "原料成本总计" }, { secondType: "原料成本", templateKey: "cost", templateSort: 1, templateValue: "3", thirdType: "原料成本总计" }]需要组成一个新数组是这样:const newArr = [ { ratio:'10%', cost:'5', }, { ratio:null, cost:'3' },]新数组newArr是以arr的templateKey作为自己的key,然后根据templateSort是否相同放在同一个对象,如大家有什么好的办法
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 我年轻我任性 普通会员 1楼

      你可以使用JSON.stringify()方法将数组对象转换为JSON字符串,然后使用JSON.parse()方法将JSON字符串转换回数组对象。这样,你就可以直接比较两个对象的值是否相同。

      以下是一个例子:

      ```javascript let array1 = [ {name: 'John', age: 30}, {name: 'Jane', age: 30}, {name: 'John', age: 30} ];

      let array2 = [ {name: 'John', age: 30}, {name: 'Jane', age: 25}, {name: 'John', age: 30} ];

      let newArray = array1.map(item => JSON.parse(JSON.stringify(item)));

      let newArray2 = array2.map(item => JSON.parse(JSON.stringify(item)));

      console.log(newArray === newArray2); // 输出:true ```

      在这个例子中,我们首先创建了两个数组对象array1array2,然后使用map()方法将它们转换为新的数组对象。最后,我们使用===运算符来比较这两个新数组对象是否相同。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部