Я пытался удалить свойства, которые имеют значение пустое или нулевое или неопределенное из объекта. Я могу удалить свойства свойств первого уровня. Но некоторые свойства сценария могут содержать другой объект, а этот объект может содержать другой объект. Так почти как СВЯЗАННЫЙ СПИСОК. Но я не уверен, как найти значения свойств объекта второго уровня.
Например
{
prop1: "value1",
prop2: {
secLevlProp1: "value1",
secLevlProp2: null,
secLevlProp3: {
secLev2Prop1: "value1",
secLev2Prop2: "value2",
secLev2Prop3: {
secLev3Prop1: "value1",
secLev3Prop2: "",
secLev3Prop3: "value3",
}
},
}
prop3: [
{ arrProp: "values", arrProp1: "" },
{ arrProp: "values2", arrProp1: "values4" },
],
prop4: "undefined",
prop5: "value1",
}
от этого объекта ожидаемый результат
{
prop1: "value1",
prop2: {
secLevlProp1: "value1",
secLevlProp3: {
secLev2Prop1: "value1",
secLev2Prop2: "value2",
secLev2Prop3: {
secLev3Prop1: "value1",
secLev3Prop3: "value3",
}
},
}
prop3: [
{ arrProp: "values" },
{ arrProp: "values2", arrProp1: "values4" },
],
prop5: "value1",
}
это то, что я пытался
Object.keys(myObj).forEach(prop=> {
if (myObj[prop] === '' || myObj[prop] === null || myObj[prop] === undefined) {
delete myObj[prop];
}
});
это прекрасно работает со свойствами первого уровня, но как мне применить вышеупомянутый код к концепции связанного списка на вышеуказанном объекте формата. Пожалуйста, кто-нибудь, помогите мне в этом.