javascript闭包概念简单解析(推荐)


Posted in Javascript onJune 03, 2016

关于"闭包"这个概念的文章在网上铺天盖地,基本已经稀烂了,但是有时候总感觉读了这么多的文章还是云山雾罩,当然是由于它本身就比较难于理解和涉及的知识较多,还有一个很重要的原因就是网上很多教程介绍可能存在一定的误区,或者说侧重点不同,下面就通过代码实例简单的介绍一下什么是闭包。

代码实例一:

function a(){  
var webName="三水点靠木"; 
console.log(webName); 
} 
a()

以上是一段非常简单的代码,当函数执行结束之后,它就会从内存中释放,里面的声明的局部变量也将在内存中被释放,自然就无法被访问,在网上很多例子中,大多涉及到了作用域问题,其实一旦涉及作用域问题就和“闭包”概念就离题了,尽管作用域和"闭包"存在一定的关系。

再来看一段代码:

function a(){ 

var webName="三水点靠木"; 

function show() { 

console.log(webName); 

} 

return show; 

} 

var func = a(); 

func();

以上代码就形成了一个典型的闭包,函数a()执行之后,在它内部声明的变量webName依然可以使用。

说了这么多,闭包到底是什么,下面做一下总结:

闭包是一个概念,它描述了函数执行完毕内存释放后,依然内存驻留的一个现象,只要把握这个核心概念,闭包就不难理解了。

以上这篇javascript闭包概念简单解析(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery UI Autocomplete 体验分享
Feb 14 Javascript
JavaScript对象的property属性详解
Apr 01 Javascript
解析浏览器端的AJAX缓存机制
Jun 21 Javascript
简单理解vue中Props属性
Oct 27 Javascript
微信小程序 安全包括(框架、功能模块、账户使用)详解
Jan 16 Javascript
利用Jquery实现几款漂亮实用的时间轴(附示例代码)
Feb 15 Javascript
JavaScript原生数组Array常用方法
Apr 06 Javascript
Vue 2中ref属性的使用方法及注意事项
Jun 12 Javascript
vue 自定义全局方法,在组件里面的使用介绍
Feb 28 Javascript
原生javascript AJAX 三级联动的实现代码
May 04 Javascript
node.js 使用 net 模块模拟 websocket 握手进行数据传递操作示例
Feb 11 Javascript
Vue中el-form标签中的自定义el-select下拉框标签功能
Apr 20 Javascript
让你一句话理解闭包(简单易懂)
Jun 03 #Javascript
Js类的静态方法与实例方法区分及jQuery拓展的两种方法
Jun 03 #Javascript
JS两个数组比较,删除重复值的巧妙方法(推荐)
Jun 03 #Javascript
JS Array创建及concat()split()slice()的使用方法
Jun 03 #Javascript
浅谈JavaScript的push(),pop(),concat()方法
Jun 03 #Javascript
Jquery中map函数的用法
Jun 03 #Javascript
JavaScript进阶练习及简单实例分析
Jun 03 #Javascript
You might like
php页面防重复提交方法总结
2013/11/25 PHP
Windows下的PHP安装pear教程
2014/10/24 PHP
php实现refresh刷新页面批量导入数据的方法
2014/12/23 PHP
php rsa加密解密使用详解
2015/01/14 PHP
docker-compose部署php项目实例详解
2019/07/30 PHP
PHP 观察者模式深入理解与应用分析
2019/09/25 PHP
Laravel中validation验证 返回中文提示 全局设置的方法
2019/09/29 PHP
jquery 简单导航实现代码
2009/09/11 Javascript
IE6/7/8/9不支持exec的简写方式
2011/05/25 Javascript
js正则表达式中test,exec,match方法的区别说明
2014/01/29 Javascript
jQuery实现鼠标经过图片预览大图效果
2014/04/10 Javascript
jQuery多级手风琴菜单实例讲解
2015/10/22 Javascript
JavaScript实现垂直滚动条效果
2017/01/18 Javascript
js实现点击切换checkbox背景图片的简单实例
2017/05/08 Javascript
深究AngularJS之ui-router详解
2017/06/13 Javascript
vue 实现模糊检索并根据其他字符的首字母顺序排列
2019/09/19 Javascript
解决vue项目运行提示Warnings while compiling.警告的问题
2020/09/18 Javascript
pandas ix &iloc &loc的区别
2019/01/10 Python
Python 窗体(tkinter)按钮 位置实例
2019/06/13 Python
Python如何使用Gitlab API实现批量的合并分支
2019/11/27 Python
使用 Python 读取电子表格中的数据实例详解
2020/04/17 Python
Python嵌入C/C++进行开发详解
2020/06/09 Python
Python连接mysql方法及常用参数
2020/09/01 Python
python使用隐式循环快速求和的实现示例
2020/09/11 Python
详解Python中第三方库Faker
2020/09/25 Python
CSS3 calc()会计算属性详解
2018/02/27 HTML / CSS
纯CSS3打造属于自己的“小黄人”
2016/03/14 HTML / CSS
List、Map、Set三个接口,存取元素时,各有什么特点?
2015/09/27 面试题
承办会议欢迎词
2014/01/17 职场文书
违反工作纪律检讨书
2014/02/15 职场文书
教师新年寄语
2014/04/03 职场文书
商业街策划方案
2014/05/31 职场文书
环卫工人节活动总结
2014/08/29 职场文书
80后婚前协议书范本
2014/10/24 职场文书
2015年保洁工作总结范文
2015/04/28 职场文书
立项申请报告范本
2015/05/15 职场文书