递归:
- n的阶乘?
// n! = n * (n-1) !
function mul(n){
if(n == 1){
return 1;
}
return n * mul(n-1);
}
注意:1.找规律 2.找出口
2.斐波那契数列?
// fb() == fb(n-1) + fb(n-2)
function fb(n){
if(n == 1 || n == 2){
return 1;
}
return fb(n - 1) + fb(n - 2);
}
这个方法叫做递归。。
预编译:
函数声明整体提升
变量 声明提升
test();
function test(){
console.log(1)
}
// 1
console.log(a);
var a = 123;
//undefined
1.imply global:暗示全局变量:即任何变量,如果未声明就赋值,此变量就为全局对象所有。
例: a = 10;
a = b = 123;
function test() {
var a = b = 123;
console.log(a);
console.log(b);
console.log(window.a);
console.log(window.b);
}
test();
// AO:{
// a:undefined,
// }
// GO:{
// b = 123;
// }
//输出:
// 123
// 123
// undefined