В настоящее время я работаю над упражнением javascript от http://toys.usvsth3m.com/javascript-under-pressure/, а мой код не работает на вложенных массивах ... Я пытаюсь использовать рекурсию для решения проблемы, но это только похоже, добавляет первый элемент в ситуацию с вложенным массивом ... Я исхожу из фона Ruby, поэтому javascript мне незнакомо.Только нахождение первого числа в вложенном массиве
Если кто-нибудь может указать, что я делаю неправильно, я был бы признателен!
Спасибо, Смитти
function arraySum(i) {
// i will be an array, containing integers and/or arrays like itself.
// Sum all the integers you find, anywhere in the nest of arrays.
var sum = 0;
sum = sumit(i);
return sum;
}
function sumit(i) {
var sum = 0;
for (a=0; a<i.length; a++)
{
if (typeof(i[a]) == 'array')
{
sumit(i[a]);
}
else
{
sum += parseInt(i[a]);
}
}
return sum;
}
Несомненно, вы хотите делать 'sum + = sumit (i [a]); 'внутри оператора' if'? –
, чтобы сделать его действительно легким, я бы сгладил массив, а затем суммировал его. – dandavis