闭包是什么,有什么特性,对页面有什么影响
2018-02-26 11:24
295 查看
一开始接触闭包有些问题一直绕不过去,可了看其他的资料,也从网上查了查,下面是我总结的一些东西:“官方”的解释是:所谓“闭包”,指的是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。通俗的讲:就是函数a的内部函数b,被函数a外部的一个变量引用的时候,就创建了一个闭包。(这样在执行完var c=a()后,变量c实际上是指向了函数b,再执行c()后就会弹出一个窗口显示i的值(第一次为1)。这段代码其实就创建了一个闭包,为什么?因为函数a外的变量c引用了函数a内的函数b) function a(){
var i=0;
function b(){
alert(++i);
}
return b;
} var c = a();
c(); 闭包的特性:①.封闭性:外界无法访问闭包内部的数据,如果在闭包内声明变量,外界是无法访问的,除非闭包主动向外界提供访问接口;
②.持久性:一般的函数,调用完毕之后,系统自动注销函数,而对于闭包来说,在外部函数被调用之后,闭包结构依然保存在
系统中,闭包中的数据依然存在,从而实现对数据的持久使用。优点:① 减少全局变量。② 减少传递函数的参数量③ 封装;
缺点:
使用闭包会占有内存资源,过多的使用闭包会导致内存溢出等.
var i=0;
function b(){
alert(++i);
}
return b;
} var c = a();
c(); 闭包的特性:①.封闭性:外界无法访问闭包内部的数据,如果在闭包内声明变量,外界是无法访问的,除非闭包主动向外界提供访问接口;
②.持久性:一般的函数,调用完毕之后,系统自动注销函数,而对于闭包来说,在外部函数被调用之后,闭包结构依然保存在
系统中,闭包中的数据依然存在,从而实现对数据的持久使用。优点:① 减少全局变量。② 减少传递函数的参数量③ 封装;
缺点:
使用闭包会占有内存资源,过多的使用闭包会导致内存溢出等.
相关文章推荐
- 闭包是什么,有什么特性,对页面有什么影响
- 对于闭包的理解;有什末特性,对页面有什么影响
- js闭包 闭包的特性 对页面的影响
- 什么是闭包?闭包的工作原理、优缺点、使用场景和对页面的影响
- 什么是闭包?闭包的工作原理、优缺点、使用场景和对页面的影响
- 单页面网站对搜索引擎优化有什么影响?
- 前端.什么是页面渲染&&影响渲染速度的两个因素
- 同一个页面用多个id有什么影响?
- 同一个页面用多个id有什么影响
- 同一个页面用多个id有什么影响
- 同一个页面用多个id有什么影响
- AutoEventWireUp到底对页面有什么影响?
- AutoEventWireUp到底对页面有什么影响?
- Android 5.0新的特性对开发者会有什么影响
- 同一个页面用多个id有什么影响
- 同一个页面用多个id有什么影响
- 经验之谈:页面内容不相关会有什么影响
- 同一个页面用多个id有什么影响
- 同一个页面用多个id有什么影响
- 同一个页面用多个id有什么影响