gpt4 book ai didi

javascript - 是否可以仅在它们共享的键/属性之间比较两个对象?

转载 作者:行者123 更新时间:2023-11-30 11:10:44 25 4
gpt4 key购买 nike

所以我有两个对象

address: {
id: 1234,
city: "foo",
country: "bar",
name: "baz"
}

defaultAddress: { 
id: 1234,
city: "foo",
country: "bar",
firstName: "ba",
lastName: "z"
}

如果我尝试在它们之间进行直接比较/断言,即

expect(address).to.contain(defaultAddress)

(或相反),它会失败,因为每个都包含另一个不包含的字段

(AssertionError: expect {address} to have a property 'firstName')

我只想比较它们共享的键中的值。是否有可能以编程方式执行类似的操作?

最佳答案

您正在尝试匹配共享 key 子集上的对象。这可以按如下方式完成。

for(const key in address) {
if(typeof defaultAddress[key] !== 'undefined') {
expect(address[key]).to.equal(defaultAddress[key])
}
}

也看看这个 answer .

关于javascript - 是否可以仅在它们共享的键/属性之间比较两个对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53847246/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com