Javascript 从对象中删除未定义的值

Javascript 从对象中删除未定义的值,javascript,object,undefined,key-value,Javascript,Object,Undefined,Key Value,我在javascript中遇到了一个问题,我想从对象中删除未定义的值 预期产出 不带未定义的值ni数组 var结果=[ 未定义, 未定义, { 组:“1042000018356”, 电邮:'xyz@desk.com' }, { 组别:'1042000098595', 电邮:'abc@desk.com' } ] //这是我的逻辑: result=result.map(函数(索引){ 对于(数组中的var键){//循环 如果(索引==键){ var group=array[key];//组id v

我在javascript中遇到了一个问题,我想从对象中删除未定义的值

预期产出 不带
未定义的
值ni数组

var结果=[
未定义,
未定义,
{
组:“1042000018356”,
电邮:'xyz@desk.com'
},
{
组别:'1042000098595',
电邮:'abc@desk.com'
}
]
//这是我的逻辑:
result=result.map(函数(索引){
对于(数组中的var键){//循环
如果(索引==键){
var group=array[key];//组id
var email=key;//电子邮件
返回{组,电子邮件};
}
}
});

console.log(“结果”,result)您只需执行筛选并传递布尔构造函数,该构造函数将确保从结果数组中删除所有空值和未定义值

var结果=[
未定义,
未定义,
{
组:“1042000018356”,
电邮:'xyz@desk.com'
},
{
组别:'1042000098595',
电邮:'abc@desk.com'
}
]
result=result.filter(布尔值);

控制台日志(结果)
使用simple
filter()
执行此操作的另一种方法要删除
未定义的
,这里过滤器内部将回调的返回值转换为
布尔值
,这类似于
布尔值
构造函数,即
过滤器(布尔值)

结果=[
未定义,
未定义,
{
组:“1042000018356”,
电邮:'xyz@desk.com'
},
{
组别:'1042000098595',
电邮:'abc@desk.com'
}
]
结果=结果.过滤器(el=>el)
控制台日志(结果)请尝试以下示例:

var newarray=[
未定义,
未定义,
{
组:“1042000018356”,
电邮:'xyz@desk.com'
},
{
组别:'1042000098595',
电邮:'abc@desk.com'
}
];
var R=[];
map(函数(项、索引、myarray){
//console.log(“项->”,项);
如果(项目类型===‘未定义’){
//log(“检测到未定义!”);
}否则{
R.推(项);
} 
});
console.log(“结果->”,R);

结果
是对象还是数组?感兴趣。你对(el=>el)有什么解释吗?…非常清楚的方法。@NikolaLukic编辑了我的答案,先生,有点解释:),谢谢你指出我的观点。