再帰に関しては、それを自分自身を呼び出す関数と考えることができます。あなたは事実を呼び出すときに、この場合
function fact(n){
//test to see if n is 1, if so just return 1
if(n === 1)
return 1;
// multiply n by the result of calling fact(n-1)
return n * fact(n - 1);
}
console.log(fact(5));
にので、この場合には(5) あなたは 5 *実際(5-1)= 4 *実際(4-1)= 3 *事実になるだろう(3 - 1)で得られた2 *事実(2-1)= 1
を= 5×4×3×2×1 = 120
それは、挿入概念のトリッキーが最初に把握するビット試すいconsole.logを関数に追加すると、何が起こっているのかをより明確に把握できます。
function fact(n){
console.log(n);
//test to see if n is 1, if so just return 1
if(n === 1)
return 1;
// multiply n by the result of calling fact(n-1)
return n * fact(n - 1);
}
出典
2017-08-24 11:32:47
Pav
あなたのGoogleキーワードは「再帰」です –
ループを使用しています。再帰的です。再帰の作業を参照してください。この* exact *コードはこれまで何度も説明されてきました。 – Carcigenicate
あなたの友人はそれをあなたや何かに説明することを拒否していますか? – BoltClock