-3
再帰を使用して配列内の整数の和を求める必要があります。 次のコードは、エラーがスローされます:この再帰の理解に問題があります
var sum = function(array) {
if(array.length === 0) return 0;
while(array.length) {
sum = array[0] + sum(array.slice(1));
return sum;
}
}
この作品ながら:
var sum = function(array) {
if(array.length === 0) return 0;
while(array.length) {
return array[0] + sum(array.slice(1));
}
}
差が合計が返される方法です。誰か説明できますか?
プログラミング言語は何ですか? – STF
'sum = array [0] + sum(array.slice(1));'ローカル関数名をオーバーライドし、 'sum'は2回目のwhileループの関数を参照しません。実際には、ループの内側から戻るので、2回目のラウンドはありません。 – Teemu