高阶函数与闭包

高阶函数与闭包

高阶函数

定义: 需满足以下任意条件:
1.接收一个或多个函数作为参数
2.返回一个函数

闭包:

定义: 必需满足两个条件:
1.一个函数中要嵌套一个内部函数,并且内部函数要访问外部函数的变量
2.内部函数要被外部函数引用
例:

function test(){
    let i=1;
    return function(){
        console.log(i);
    }
}
let tes=test();//当我们盗用test函数时,就产生了一个闭包
tes();//1
//test中的i在执行完函数后本来会立即销毁,但由于全局中的tes还在引用,所以i就变成了自由变量

优点:可以让应该销毁的变量保存下来
缺点:消耗内存

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值