У меня есть следующий объект, и я хочу установить все значения в нем равными null, сохраняя при этом структуру объектов
var objs = {
a: {
prop1: {id: null, val: 10},
prop2: true,
prop3: null,
},
b: {
prop1: {id: null, val: 20},
prop2: true,
prop3: null,
},
c: 10
}
Результаты должны быть:
var objs = {
a: {
prop1: {id: null, val: null},
prop2: null,
prop3: null,
},
b: {
prop1: {id: null, val: null},
prop2: null,
prop3: null,
},
c: null
}
Это решение работает для меня, и я считаю, что оно должно работать на любой глубине. Но если есть более элегантное или эффективное решение, дайте мне знать.
var objs = {
a: {
prop1: {id: null, val: 10},
prop2: true,
prop3: null,
},
b: {
prop1: {id: null, val: 20},
prop2: true,
prop3: null,
},
c: 10
}
function nullTest(val){
for (key in val) {
if(typeof(val[key]) !== 'object') {
val[key] = null;
} else {
val[key] = nullTest(val[key])
}
}
return val
}
console.log(nullTest(objs));
Спасибо