- 闭包的概念
常见的说法
1> 可以访问函数内部的数据的函数
2> 所谓的闭包就是有未绑定到特定对象的代码组成的语法块( 含有的自由变量的语法结构 )闭包要实现两个问题:
1、 访问函数内部的变量
2、所访问的变量将不被释放
function add(){ var num=100; function add1(){ num++; return num; } return add1; } var add2=add(); var num1=add2(); console.log(num1); console.log('我是分割线-------') var num2=add2(); console.log(num2);由上可知当add2调用时add函数内部的num变量不被释放,会出现console打印出来分别为101 102,这就是闭包。
对比可以看看下列代码中num1 num2的值将会一样 100,因为在add函数执行完后,num将会根据回收机制被回收,释放空间。
function add(){ var num=100; num++; return num; } var num1=add(); console.log(num1); console.log('我是分割线-------'); var num2=add(); console.log(num2);
对闭包的理解
最新推荐文章于 2022-04-26 02:29:51 发布


2万+

被折叠的 条评论
为什么被折叠?



