js找到两个数组不相同的对象value var a = [1,2],var b = [{value: 1,name: '123'},{value: 3, name='456'}
时间: 2024-10-14 07:17:33 浏览: 24
js合并两个数组生成合并后的key:value数组
在JavaScript中,如果你有两个数组`a`和`b`,并且它们包含的对象作为值,你需要找出两个数组之间value属性不同的对象。你可以通过创建一个新的Set数据结构存储数组`a`中的对象,然后遍历数组`b`,对每个对象检查其value是否存在于Set中。若不存在,则说明该value在两个数组中不相同。
以下是一个简单的示例:
```javascript
let a = [1, 2];
let b = [{ value: 1, name: '123' }, { value: 3, name: '456' }];
// 将数组a转为Set,方便查找是否存在某个value
let setA = new Set(a.map(item => item));
// 遍历数组b,找出value不在setA中的对象
let diffObjects = b.filter(obj => !setA.has(obj.value));
console.log(diffObjects); // 输出:[{ value: 3, name: '456' }]
```
这里`diffObjects`将包含在`b`中且`a`中没有的具有value为3的对象。
阅读全文