スコープのライフサイクル。
= 10があります。
関数M1(){
= 5があります。
警告(a)は、
}
パラメータ(仮パラメータ)と引数(実際のパラメータ)に有意な差
= 10があります。
VAR X = 0。
関数fn(x)は{
X = A + 10。
}
FN (A)。
再帰的用法
再帰とは何ですか?
彼らの通話そのもの!
関数PR(){
リターンQ()
}
キーポイント:
1.終了条件
2.動作ルール
関数PR(N){
IF(N == 1){//終了条件
Nを返します。
}
戻り + Q(N-1)ではありません。
}
任意の数の印刷のHello Worldを。
関数PR(N){
IF(N == 0){
リターン
}
document.write( 'Hello Worldの!! <BR>');
リターンQ(N-1)
}
(10)あたり
ケースは:見つける 5は、1 + 2 + 3 + 4 + 5を計算し、n個の数字をと
<!DOCTYPE HTML>
<HTML>
<ヘッド>
<メタ文字セット= "UTF-8" />
<タイトル> </ TITLE>
</ head>の
<身体>
</ BODY>
ます。<script type = "text / javascriptの">
//関数の宣言
関数getSum(X){
もし(x == 1){
1を返します。
}
X + getSum(X - 1)を返します。
}
//関数を呼び出します
console.log(getSum(5))。
</script>
</html>
案例:输出斐波那契额数列数列的前20项(递归)
斐波那契数列指的是这样一个数列 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368........
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
</body>
<script type="text/javascript">
function fib(n) {
if (n == 1 || n == 2) {
return 1
}
return fib(n - 1) + fib(n - 2)
}
for (var i = 1; i <= 20; i++) {
document.write(fib(i) + '<br>')
}
</script>
</html>