JavaScriptでの再帰による配列要素の合計

配列のプリミティブ要素の合計を見つけてみましょう:

javascriptfunction func(arr) {
  let sum = 0;
  
  for (let elem of arr) {
    if (typeof elem == 'object') {
      sum += func(elem);
    } else {
      sum += elem;
    }
  }
  
  return sum;
}

console.log(func([1, [2, 7, 8], [3, 4, [5, [6, 7]]]]));
Задание 1

例えば、以下のような任意のレベルの入れ子を持つ多次元オブジェクトが与えられています:

javascript{a: 1, b: {c: 2, d: 3, e: 4}, f: {g: 5, j: 6, k: {l: 7, m: {n: 8, o: 9}}}}

再帰を使用して、このオブジェクトの要素の合計を求めてください。

Задание 2

例えば、以下のような文字列を含む、任意のレベルの入れ子を持つ多次元配列が与えられています:

javascript['a', ['b', 'c', 'd'], ['e', 'f', ['g', ['j', 'k']]]]

再帰を使用して、この配列の要素を1つの文字列に結合してください:

javascript'abcdefgjk'