Как можно перебрать и найти сумму элемента этого объекта(js)?
let obj = {
key1: {
a: 1, b: 2, c: {
d: 3,
e: 4,
}, f: 5,
},
key2: {
g: 6, h: 7,
},
}
Ответы (1 шт):
Автор решения: Aziz Umarov
→ Ссылка
Как-то так
Так как ключи нам не интересны только значения. Нужно посмотреть не является ли значение объектом и просуммировать его, а если да то рекурсия.
let obj = {
key1: {
a: 1, b: 2, c: {
d: 3,
e: 4,
}, f: 5,
},
key2: {
g: 6, h: 7,
},
}
function Sum(obj) {
return Object.values(obj).reduce((acc, item) => { acc+= (item instanceof Object)? Sum(item): item; return acc;}, 0);
}
console.log(Sum(obj));