js的闭包

js的闭包

身为一个前端工程师,掌握js的各种基础知识是重中之重。有人可能说,我基础知识一般,但是我vue,react,以及俩大框架的周边,我用的也非常666啊,工资也20k了呢。这说没错的,但是我们从事的是一个变化极快,日新月异的行业,各种思想层出不穷。唯一不怎么改变的说基础的计算机原理,我们身为前端如果不往专家,大师这种级别发展,暂时不需要把计算机原理吃透的,但是掌握js的基础原理,那是不可否认的,只有这样,你才能应对这日新月异的行业变化。
我还是老风格,闭包的详细讲解,网上的各个大哥们总结的非常到位,我就不复述了,我还是按照我的习惯,总结出一个3句话攻略,来表述闭包的形成。
1.外层函数内部return内部函数引用
2.return的内部函数里使用里外层函数的变量
3.有全局变量引用这个return出来的函数

栗子:
function outFn(){
let outNum = 0;
return function () { 1.外层函数内部return内部函数引用
outNum++; 2.return的内部函数里使用里外层函数的变量
return outNum
}
}

let global_num = outFn(); 3.有全局变量引用这个return出来的函数
console.log(global_num());
console.log(global_num());
打印输出后 你会发现变量outNum没有被垃圾机制清除。
闭包的最重要的作用就是这个,保护变量不被垃圾机制清除。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值