You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取对象A独有的属性?Lodash是否有对应方法?

使用Lodash提取仅存在于objA的属性

要实现从objA中获取仅它有、objB没有的属性,Lodash有几种简洁的实现方式:

方法一:直接筛选属性

利用_.pickBy遍历objA的属性,配合_.has判断属性是否不存在于objB中:

const objA = { name: 'Tom', age: '20', location: 'London' };
const objB = { name: 'Jimmy', age: '35', occupation: 'Welder', hobbies: ['Football'] };

const result = _.pickBy(objA, (_, key) => !_.has(objB, key));
console.log(result); // { location: 'London' }

方法二:先取键的差集再提取属性

先通过_.difference获取objA独有的键数组,再用_.pick提取对应属性:

const objA = { name: 'Tom', age: '20', location: 'London' };
const objB = { name: 'Jimmy', age: '35', occupation: 'Welder', hobbies: ['Football'] };

const uniqueKeys = _.difference(_.keys(objA), _.keys(objB));
const result = _.pick(objA, uniqueKeys);
console.log(result); // { location: 'London' }

两种方法都能精准得到你要的结果,第一种步骤更紧凑,第二种逻辑拆分清晰,按需选择即可。

内容的提问来源于stack exchange,提问作者Keselme

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 08:45:48