Сложение элментов массива (с несколькими вложениями) с помощью рекурсивной функции

Добрый день. Я совсем новичок в js, только учусь.
Стоит задача сложить элементы массива (с несколькими вложениями) с помощью рекурсивной функции.

Вот так получилось:

var a =   [ 2, 4, [ 4, [2], 2 ], [ 9, [] ], 3, 15];

function sum (n, i=0) {
  if (n.length == 0) {
   	return 0;
  }   
  return  n[i] + sum (n, i+1); 
}

sum(a);
console.log(sum(a));

Но это не сработало

function sum(arr, res = 0) {
	for (let i = 0; i < arr.length; i += 1) {
		const item = arr[i]
		if (Array.isArray(item)) {
			res += sum(item)
		} else {
			res += item
		}
	}
	return res
}

Спасибо!