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 相关文章推荐
js控制框架刷新
Aug 01 Javascript
关于scrollLeft,scrollTop的浏览器兼容性测试
Mar 19 Javascript
javascript中不提供sleep功能如何实现这个功能
May 27 Javascript
DOM基础教程之使用DOM控制表单
Jan 20 Javascript
Node.js抓取中文网页乱码问题和解决方法
Feb 10 Javascript
jQuery获取cookie值及删除cookie用法实例
Apr 15 Javascript
jQuery内容折叠效果插件用法实例分析(附demo源码)
Apr 28 Javascript
微信小程序 数据交互与渲染实例详解
Jan 21 Javascript
React如何将组件渲染到指定DOM节点详解
Sep 08 Javascript
JS实现的字符串数组去重功能小结
Jun 17 Javascript
vue任意关系组件通信与跨组件监听状态vue-communication
Oct 18 Javascript
VUE-ElementUI 自定义Loading图操作
Nov 11 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
overlord人气高涨,却被菲利普频繁举报,第四季很难在国内上映
2020/05/06 日漫
php连接Access数据库错误及解决方法
2013/06/20 PHP
PHP中的多行字符串传递给JavaScript的两种方法
2014/06/19 PHP
PHP实现图片压缩的两则实例
2014/07/19 PHP
php实现图片文件与下载文件防盗链的方法
2014/11/03 PHP
JavaScript 获取用户客户端操作系统版本
2009/08/25 Javascript
ExtJS[Desktop]实现图标换行示例代码
2013/11/17 Javascript
javascript 小数乘法结果错误的处理方法
2016/07/28 Javascript
原生javascript实现分页效果
2017/04/21 Javascript
Vue.js实现文章评论和回复评论功能
2020/05/30 Javascript
JS设置手机验证码60s等待实现代码
2017/06/14 Javascript
React-Native 组件之 Modal的使用详解
2017/08/08 Javascript
安装vue-cli报错 -4058 的解决方法
2017/10/19 Javascript
JavaScript+H5实现微信摇一摇功能
2018/05/23 Javascript
vue监听键盘事件的快捷方法【推荐】
2018/07/11 Javascript
在element-ui的el-tree组件中用render函数生成el-button的实例代码
2018/11/05 Javascript
在微信小程序中保存网络图片
2019/02/12 Javascript
vue 对象添加或删除成员时无法实时更新的解决方法
2019/05/01 Javascript
vue实现的请求服务器端API接口示例
2019/05/25 Javascript
微信小程序在ios下Echarts图表不能滑动的问题解决
2019/07/10 Javascript
关于vue路由缓存清除在main.js中的设置
2019/11/06 Javascript
js实现小星星游戏
2020/03/23 Javascript
vue 项目软键盘回车触发搜索事件
2020/09/09 Javascript
python开发简易版在线音乐播放器
2017/03/03 Python
分享给Python新手们的几道简单练习题
2017/09/21 Python
Python实现连接MySql数据库及增删改查操作详解
2019/04/16 Python
python Pandas如何对数据集随机抽样
2019/07/29 Python
Python 剪绳子的多种思路实现(动态规划和贪心)
2020/02/24 Python
Python使用pyyaml模块处理yaml数据
2020/04/14 Python
增大python字体的方法步骤
2020/07/05 Python
佳能德国网上商店:Canon德国
2017/03/18 全球购物
大韩航空官方网站:Korean Air
2017/10/25 全球购物
惊艳的手工时装首饰:Migonne Gavigan
2018/02/23 全球购物
2014年设计师工作总结
2014/11/25 职场文书
Redis安装使用RedisJSON模块的方法
2022/03/23 Redis
基于Python实现西西成语接龙小助手
2022/08/05 Golang