Javascriptで再帰関数を作成しようとしていますが、明らかに何かが見当たりません。 次の例では、ログにbaz = 18が表示されていますが、bazは未定義です。Javascriptを再帰的に使用すると返り値が返される
https://jsfiddle.net/n8fg1h3v/1/
任意のアイデア?
function foo(arr) {
if (arr[0]==7) {
return 18
} else {
arr = arr.slice(1,arr.length);
foo(arr);
}
}
var arr1 = [9,1,2,3,4,7,6];
var baz = foo(arr1);
console.log(baz)
注意してください、あなたが(再割り当てを行うことができますが、 'ARR = ...' )あなたが望むところでは、Javascriptでそれはまれです再帰アルゴリズム内で式を引数として渡します( 'foo(arr.slice(...))) – ftor