Javascript Lodash未执行嵌套方法,
给定这个数组Javascript Lodash未执行嵌套方法,,javascript,arrays,object,lodash,Javascript,Arrays,Object,Lodash,给定这个数组var数组=[{a:1,b:2,c:3},{a:2,b:4,c:4}] 我希望遍历数组中的每个项,并使用lodash省略键c,以及它的值 这是我尝试过的方法 \每个(数组、函数(obj){ 返回省略(obj,['a']); }); 预期的输出应该是/[{b:2,c:3},{b:4,c:4}] 但是lodash返回原始数组/[{a:1,b:2,c:3},{a:2,b:4,c:4}]而不是forEach()要返回新修改的数组,您应该使用map(),第一个参数是array var数组=[
var数组=[{a:1,b:2,c:3},{a:2,b:4,c:4}]
我希望遍历数组中的每个项,并使用lodash省略键c
,以及它的值
这是我尝试过的方法
\每个(数组、函数(obj){
返回省略(obj,['a']);
});代码>
预期的输出应该是/[{b:2,c:3},{b:4,c:4}]
但是lodash返回原始数组/[{a:1,b:2,c:3},{a:2,b:4,c:4}]
而不是forEach()
要返回新修改的数组,您应该使用map()
,第一个参数是array
var数组=[{a:1,b:2,c:3},{a:2,b:4,c:4}]
var result=u2;.map(数组,函数(obj){
返回省略(obj,['a']);
});
console.log(JSON.stringify(result,0,4))
A可能不是最简单的处理方式(假设您确实想省略A
):
应该返回原始数组。你在找我
const数组=[{a:1,b:2,c:3},{a:2,b:4,c:4}];
常量结果=j.map(数组,obj=>j.omit(obj,'a'));
控制台日志(结果)代码>
我猜你的意思是想省略a
?@Nenad的答案肯定更好。是的!这就是我发现的。我使用了.map(数组,(obj)=>(obj,'a')代码>并且它工作得很好。
_.each(lnkn, function (obj) {
var returnObj = {};
for (prop in obj) {
if (obj.hasOwnProperty(prop) {
if (prop !== 'a') {
returnObj[prop] = obj[prop];
}
}
}
return returnObj;
});