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 相关文章推荐
网页设计常用的一些技巧
Dec 22 Javascript
javascript+dom树型菜单类,希望朋友们一起进步
May 03 Javascript
JavaScript网页制作特殊效果用随机数
May 22 Javascript
javascript Ext JS 状态默认存储时间
Feb 15 Javascript
js的表单操作 简单计算器
Dec 29 Javascript
javascript图片预加载完整实例
Dec 10 Javascript
基于BootStrap的Metronic框架实现页面链接收藏夹功能按钮移动收藏记录(使用Sortable进行拖动排序)
Aug 29 Javascript
angular实现form验证实例代码
Jan 17 Javascript
详解Angular 自定义结构指令
Jun 21 Javascript
jQuery plugin animsition使用小结
Sep 14 jQuery
Vue 项目中遇到的跨域问题及解决方法(后台php)
Mar 28 Javascript
JS中getElementsByClassName与classList兼容性问题解决方案分析
Aug 07 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实现文件下载更能介绍
2012/11/23 PHP
php源代码安装常见错误与解决办法分享
2013/05/28 PHP
php中Socket创建与监听实现方法
2015/01/05 PHP
PHP下载远程文件到本地存储的方法
2015/03/24 PHP
zen cart实现订单中增加paypal中预留电话的方法
2016/07/12 PHP
PHP实现图片批量打包下载功能
2017/03/01 PHP
浅谈PHP发送HTTP请求的几种方式
2017/07/25 PHP
JQuery Dialog(JS 模态窗口,可拖拽的DIV)
2010/02/07 Javascript
修复ie8&chrome下window的resize事件多次执行
2011/10/20 Javascript
javascript淡入淡出效果的实现思路
2012/03/31 Javascript
JavaScript实现跨浏览器的添加及删除事件绑定函数实例
2015/08/04 Javascript
Javascript日期格式化format函数的使用方法
2016/08/30 Javascript
AngularJS 所有版本下载地址
2016/09/14 Javascript
vue.js初学入门教程(2)
2016/11/07 Javascript
Angular.js中数组操作的方法教程
2017/07/31 Javascript
vue生成token保存在客户端localStorage中的方法
2017/10/25 Javascript
JavaScript实现点击出现图片并统计点击次数功能示例
2018/07/23 Javascript
一个手写的vue放大镜效果
2019/08/09 Javascript
[17:00]DOTA2 HEROS教学视频教你分分钟做大人-帕克
2014/06/10 DOTA
[02:28]PWL开团时刻DAY3——Ink Ice与DeMonsTer之间的勾心斗角
2020/11/03 DOTA
python中(str,list,tuple)基础知识汇总
2018/02/20 Python
python多线程调用exit无法退出的解决方法
2019/02/18 Python
pytorch  网络参数 weight bias 初始化详解
2020/06/24 Python
详解Pandas 处理缺失值指令大全
2020/07/30 Python
俄罗斯美容和健康网上商店:Созвездие Красоты
2019/07/23 全球购物
个人自我评价和职业目标
2014/01/24 职场文书
销售提升方案
2014/06/07 职场文书
2014年维修工作总结
2014/11/22 职场文书
悬空寺导游词
2015/02/05 职场文书
冰峪沟导游词
2015/02/09 职场文书
2015年国税春训心得体会
2015/03/09 职场文书
开学典礼致辞
2015/07/29 职场文书
三八节祝酒词
2015/08/11 职场文书
2016年艾滋病宣传活动总结
2016/04/01 职场文书
html+css 实现简易导航栏功能
2021/04/07 HTML / CSS
C#连接ORACLE出现乱码问题的解决方法
2021/10/05 Oracle