Возможно ли решить задачу без циклов?
Возможно, но это извращение (никогда так не делайте!):eval(JSON.stringify(array).replace(/[^\d]+/g, '+') + '0') // 31
Перевести массив в JSON-строку, все не-цифры заменить на знаки «+» и выполнить полученное выражение.
Например: const a = [1, 2, [3, 4, [[5, 6], 7], 8]];
// Вжух! и получится строка:
"+1+2+3+4+5+6+7+8+"
Если превратить его в строку и удалить все скобочки - убрав вложенность, а потом заменить запятые на знаки + то можно сделать eval() и получить результат.eval(JSON.stringify(array).replace(/\[/g,"").replace(/\]/g,"").replace(/,/g,"+"))