移除空属性
Sunny-117 opened this issue · comments
移除空属性
let obj={a:null,b:'哈哈哈'}
//对象移除为空的属性
for (const [key, value] of Object.entries(obj)) {
if (value === null || value === "" || value === undefined) { //筛选条件可根据实际情况自行调整
Reflect.deleteProperty(obj, key);
}
}
console.log(obj) //{b:'哈哈哈'}
function main(obj){
for (const key in obj) {
if (Object.hasOwnProperty.call(obj, key)) {
if(obj[key] === null || obj[key] === undefined || obj[key] === ""){
delete obj[key]
}else if(typeof obj[key] === "object"){
main(obj[key])
}
}
}
return obj;
}
function removeEmpty(obj) {
Object.keys(obj).forEach(key =>
(obj[key] && typeof obj[key] === 'object') && removeEmpty(obj[key]) ||
(obj[key] === undefined || obj[key] == null || obj[key] === '') && delete obj[key]
);
return obj;
};
let myObj = { a: '', b: null, c: undefined, d: 'Hello', e: { f: '', g:'World' } };
console.log(removeEmpty(myObj));