1.闭包:
一个函数可以访问另一个函数的局部变量
作用:
把数据保护起来,把数据缓存起来
特征:
1.有外层函数
2.外层函数有局部变量
3.有内层函数
4.内层函数操作外层函数局部变量
5.内层函数作为外层函数的返回值
缺点:
局部变量一直在使用,浏览器关闭才回收-----会占据内存
2.沙箱
作用:
在沙箱里面模拟真实的环境,然后把想要的操作完成之后,在沙箱的外面付诸实施
把代码保护起来
写法
自调用函数,局部作用域
(function(){
代码写这里
})();
3.递归
函数自己调用自己--有条件
如果满足某个条件,函数内部就继续自己调用自己,否则结束
写递归的过程
1.假设有一个函数已经完成效果
2.把过程仔细分析,找规律
3.把规律写在函数体
4.特殊情况特殊处理
用递归请n的阶乘