Lodash中pick后同时获取剩余对象是否有简洁写法?
解决方案
Lodash原生并没有提供直接返回「选中字段对象」和「剩余字段对象」的组合方法,但可以通过以下两种简洁方式实现你想要的单行解构效果:
1. 封装复用工具函数
这是最贴合你需求的方案,封装一次后可重复调用:
const pickWithRest = (obj, fields) => [_.pick(obj, fields), _.omit(obj, fields)]; // 调用方式完全符合预期 const [bio, rest] = pickWithRest(data, bioFields);
2. 直接单行解构(无需额外封装)
如果只是临时场景使用,也可以直接在解构语句中完成:
const [bio, rest] = [_.pick(data, bioFields), _.omit(data, bioFields)];
你提到的partition方法确实不适用——它是针对数组按条件拆分元素的工具,无法直接用于对象的键值筛选拆分。
内容的提问来源于stack exchange,提问作者Joost Schuur
相关产品推荐
相关产品推荐

