微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何比较具有相同对象属性的两个值?

如何解决如何比较具有相同对象属性的两个值?

我有以下两个数据:

const data1 = 
[
  {
    "Name": "Shoes","SKU": "SKU001","Quantity": 4
  },{
    "Name": "Sweater","SKU": "SKU002","Quantity": 2
  }
]
const data2 =
[
  {
    "DN": "DN0001",{
    "DN": "DN0002","Quantity": 4
  }
]

我想比较每个SKU data1的数量和每个SKU data2的数量(相同与否)。我怎么能比较呢?

解决方法

const data1 = 
[
  {
    "Name": "Shoes","SKU": "SKU001","Quantity": 4
  },{
    "Name": "Sweater","SKU": "SKU002","Quantity": 2
  }
]
const data2 =
[
  {
    "DN": "DN0001",{
    "DN": "DN0002","Quantity": 4
  }
]

let result = data1.map(d1 => data2.find(d2 => d2.SKU === d1.SKU)?.Quantity === d1.Quantity);

console.log(result);

,

你可以像下面这样尝试

const data1 =
    [
        {
            "Name": "Shoes","Quantity": 4
        },{
            "Name": "Sweater","Quantity": 2
        }
    ]
const data2 =
    [
        {
            "DN": "DN0001",{
            "DN": "DN0002","Quantity": 4
        }
    ]

const result = data1.map((list) => {
    const hasItem = data2.find((data) => data.SKU === list.SKU);
    if (hasItem) {
        return hasItem.Quantity === list.Quantity;
    } else {
        return false
    }

})

console.log('res',result); // [true,false] 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。