2 回答
TA贡献1796条经验 获得超4个赞
注释中的代码不起作用,因此我将在此处再次输入:
function removeEmptyEntries(object) {
let allEmpty = true;
for (let item in object) {
if (typeof object[item] == "object") {
if(removeEmptyEntries(object[item]))
{
delete object[item];
} else {
allEmpty = false;
}
} else if (object[item]=="") {
delete object[item]
} else {
allEmpty = false;
}
}
return allEmpty;
}
警告:这是从我的头顶上做的,所以它未经测试。
TA贡献1828条经验 获得超13个赞
这是你想要的那种东西吗?
function remove(object) {
for (let item in object) {
if (typeof object[item] == "object") {
remove(object[item])
} else {
if (object[item]=="") {
delete object[item]
}
}
}
return object
}
const obj = {
"a": {
"a1": ""
},
"b": {
"b1": "",
"b2": {
"b21": "",
"b22": {
"b22z": "",
"b22x": ""
},
"b23": ""
},
"b3": ""
},
"c": "only non-empty field"
}
console.log(remove(obj))
添加回答
举报