JavaScript js闭包所用的场合以及优缺点
来源:互联网 发布:70大中城市房价数据 编辑:程序博客网 时间:2024/06/06 03:47
转载:http://blog.sina.com.cn/s/blog_50197c290101f870.html
先上段代码:
//函数a
{
}
代码特点:
1、函数b嵌套在函数a内部;
2、函数a返回函数b。
代码中函数a的内部函数b,被函数a外面的一个变量c引用的时候,这就叫创建了一个闭包。有时候函数b也可以用一个匿名函数代替来返回,即return function(){};
优点:1.保护函数内的变量安全,加强了封装性 2.在内存中维持一个变量(用的太多就变成了缺点,占内存)
闭包之所以会占用资源是当函数a执行结束后, 变量i不会因为函数a的结束而销毁, 因为b的执行需要依赖a中的变量。
不适合场景:返回闭包的函数是个非常大的函数
闭包的典型框架应该就是jquery了。
闭包是javascript语言的一大特点,主要应用闭包场合主要是为了:设计私有的方法和变量。
这在做框架的时候体现更明显,有些方法和属性只是运算逻辑过程中的使用的,不想让外部修改这些属性,因此就可以设计一个闭包来只提供方法获取。
闭包的缺点就是常驻内存,会增大内存使用量,使用不当很容易造成内存泄露。
1. 逻辑连续,当闭包作为另一个函数调用的参数时,避免你脱离当前逻辑而单独编写额外逻辑。
2. 方便调用上下文的局部变量。
3. 加强封装性,第2点的延伸,可以达到对变量的保护作用。
缺点:
闭包有一个非常严重的问题,那就是内存浪费问题,这个内存浪费不仅仅因为它常驻内存,更重要的是,对闭包的使用不当会造成无效内存的产生 0 0
- JavaScript js闭包所用的场合以及优缺点
- JavaScript js闭包所用的场合以及优缺点
- JavaScript js闭包所用的场合以及优缺点
- B/S C/S 的优缺点以及适应的场合
- 异步操作的优缺点及其应用场合
- 关于js的事件绑定以及优缺点
- js创建对象的方法以及优缺点
- js继承的原理、方式以及优缺点
- javascript--闭包性质以及JS垃圾回收器
- 什么是闭包?闭包的优缺点?
- 什么是闭包?闭包的优缺点?
- 什么是闭包?闭包的优缺点?
- 什么是闭包?闭包的优缺点?
- 什么是闭包?闭包的优缺点?
- 什么是闭包?闭包的优缺点?
- 什么是闭包?闭包的优缺点?
- js闭包的概念以及引入
- 闭包函数的特性和作用及应用场合
- 【学习C++】C++ Primer Plus (第六版)第十二章编程练习1-6
- poj 3094 Quicksum
- RS232串口通信详解
- python安装完毕后,提示找不到ssl模块的解决步骤
- C#子线程执行完后通知主线程
- JavaScript js闭包所用的场合以及优缺点
- 移动web:Tips消息弹出框
- RxJava
- 记录一些Android开发要用到的网站。
- eclipse下vim插件 打开文件目录
- 中国的民营银行
- iOS swift零基础学习心得
- 抓包工具Wireshark自定义协议解析lua脚本
- CSG BSP