Giả sử sau đây là đối tượng của chúng tôi -
const details =
{
name: 'John',
age: {},
marks: { marks: {} }
}
Chúng ta cần xóa các đối tượng màu đen ở trên. Bạn có thể sử dụng forEach () cùng với typeof và delete để xóa các đối tượng trống.
Ví dụ
Sau đây là mã -
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); Để chạy chương trình trên, bạn cần sử dụng lệnh sau -
node fileName.js.
Đây, tên tệp của tôi là demo283.js.
Điều này sẽ tạo ra kết quả sau trên bảng điều khiển -
PS C:\Users\Amit\javascript-code> node demo283.js
{ name: 'John' }