如何从JavaScript中的对象删除所有空白对象?
假设以下是我们的对象-
const details =
{
name: 'John',
age: {},
marks: { marks: {} }
}
我们需要删除上面的黑色对象。您可以将forEach()typeof和delete一起使用,以删除空白对象。
示例
以下是代码-
const details =
{
name: 'John',
age: {},
marks: { marks: {} }
}
function removeAllBlankObjects(detailsObj) {
Object.keys(detailsObj).forEach(k => {
if (detailsObj[k] && typeof detailsObj[k] === 'object' && removeAllBlankObjects(detailsObj[k]) === null) {
delete detailsObj[k];
}
});
if (!Object.keys(detailsObj).length) {
return null;
}
}
removeAllBlankObjects(details);
console.log(details);要运行上述程序,您需要使用以下命令-
node fileName.js.
在这里,我的文件名为demo283.js。
这将在控制台上产生以下输出-
PS C:\Users\Amit\javascript-code> node demo283.js
{ name: 'John' }