js中闭包

原创 1948712434 随笔 javascript 382阅读 2018-05-26 14:08:31 举报

闭包:

闭包是js中的重点之一,也是难点之一吧,其余的还有继承,作用域链,原型链,面向对象等,都是初学者不能短时间就能掌握的。那么今天在这里就说一下闭包吧。

什么是闭包呢?
我相信很多的同学都会到网上去查找闭包是什么,但是网上的很多都是你看过了跟没看一样,可能我今天的也会吧。网上的很多都是这样定义闭包的:函数里面包含函数,内函数访问外函数的变量(例子):

这个确实是闭包,但是它没什么用,平时基本上都会这样写到这个格式,下面给你看下特殊的闭包吧:

这个闭包保存了变量num不被推毁,让num保持最新的值,即是保持num最新的最新状态,这时候的num相当于全局变量不被推毁,与全局变量区别于num不能被他自己作用域外的对象访问,所以闭包的作用就是记录某个对象的当前状态,比如保存一个变量的值。

评论 ( 0 )
最新评论
暂无评论

赶紧努力消灭 0 回复