Напишите функцию recursiveSum(obj), которая принимает объект и рекурсивно считает сумму всех чисел внутри него.
Если объект содержит вложенные объекты, их тоже нужно обходить рекурсивно. Нечисловые значения нужно игнорировать.
recursiveSum({ a: 1, b: { c: 3, d: -10, e: { f: { g: 1 } } } }) // => -5
recursiveSum({ a: "text", b: { c: true, d: null, e: 5 } }) // => 5
Для каждого значения три случая: число → прибавить к сумме; объект → рекурсивно вызвать себя; всё остальное (строка, boolean, null) → пропустить. Проверяйте val && typeof val === 'object' — без val && null пройдёт проверку (у него тоже typeof === 'object').
Что ещё могут спросить: поддержать массивы внутри объекта (числа в массивах тоже считать). Или переписать итеративно через стек.