Javascript 从对象中删除空值或空值
我有以下JavaScript对象:Javascript 从对象中删除空值或空值,javascript,jquery,arrays,json,object,Javascript,Jquery,Arrays,Json,Object,我有以下JavaScript对象: var items = [ { item1: '', item2: 'foo' }, { item1: 'bar' item2: '' } ]; 我想删除值为空或null的所有键/值对。以下各项似乎未按预期工作: $.each(items, function(i,v){ $.each(items[i], function(i2, v2){
var items = [
{
item1: '',
item2: 'foo'
},
{
item1: 'bar'
item2: ''
}
];
我想删除值为空或null的所有键/值对。以下各项似乎未按预期工作:
$.each(items, function(i,v){
$.each(items[i], function(i2, v2){
if (v2 === "" || v2 === null){
delete items[i2];
}
});
});
console.log(items);
控制台日志返回以下错误:未捕获类型错误:无法读取未定义的属性“length”
如何正确执行此操作?使用纯Javascript,您可以迭代数组和所有键,检查空字符串或
null
值,然后根据需要删除
var items=[{item1:'',item2:'foo'},{item1:'bar',item2:'}];
项目。forEach(功能(o){
Object.keys(o).forEach(函数(k){
如果(o[k]==''| | o[k]===null){
删除o[k];
}
});
});
控制台日志(项目)代码>使用普通Javascript,可以迭代数组和所有键,检查空字符串或null
值,然后删除if
var items=[{item1:'',item2:'foo'},{item1:'bar',item2:'}];
项目。forEach(功能(o){
Object.keys(o).forEach(函数(k){
如果(o[k]==''| | o[k]===null){
删除o[k];
}
});
});
控制台日志(项目)使用jQuery的解决方案的代码>。每个:
var项目=[{
第1项:'',
第2项:“foo”
}, {
第1项:“酒吧”,
项目2:'
}];
$。每个(项目、功能(i、v){
$。每个(v,函数(i2,v2){
如果(v2==“”| | v2==null){
删除v[i2];
}
});
});
控制台日志(项目)代码>
使用jQuery的解决方案的。每个:
var项目=[{
第1项:'',
第2项:“foo”
}, {
第1项:“酒吧”,
项目2:'
}];
$。每个(项目、功能(i、v){
$。每个(v,函数(i2,v2){
如果(v2==“”| | v2==null){
删除v[i2];
}
});
});
控制台日志(项目)代码>
我想我不必要地过度复杂了这一点,你的解决方案要好得多。我想我不必要地过度复杂了这一点,你的解决方案要好得多。