2020-08-03
描述
对两个对象进行比较,以确定第一个对象中是否包含有第二个对象中相同的属性值。
提示
- 使用
Object.keys()
获取第二个对象的所有键 - 使用
Array.prototype.every()
和Object.hasOwnProperty()
进行严格的对比检测 - 判断第二个对象中的所有键是否都存在第一个对象中,并且他们是否有着相同的值
代码
const matches = (obj, source) =>
Object.keys(source).every(key => obj.hasOwnProperty(key) && obj[key] === source[key]);
示例
第一个对象是否包含了第二个对象:
matches({ age: 25, hair: 'long', beard: true }, { hair: 'long', beard: true }); // true
matches({ hair: 'long', beard: true }, { age: 25, hair: 'long', beard: true }); // false
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于