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 相关文章推荐
jqTransform form表单美化插件使用方法
Jul 05 Javascript
JS.findElementById()使用介绍
Sep 21 Javascript
一行命令搞定node.js 版本升级
Jul 20 Javascript
基于jQuery的JavaScript模版引擎JsRender使用指南
Dec 29 Javascript
javascript实现的图片切割多块效果实例
May 07 Javascript
对js中回调函数的一些看法
Aug 29 Javascript
分分钟玩转Vue.js组件
Oct 25 Javascript
d3.js实现简单的网络拓扑图实例代码
Nov 06 Javascript
详解Vue路由History mode模式中页面无法渲染的原因及解决
Sep 28 Javascript
微信小程序input框中加入小图标的实现方法
Jun 19 Javascript
SVG实现时钟效果
Jul 17 Javascript
小程序日历控件使用方法详解
Dec 29 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
比file_get_contents稳定的curl_get_contents分享
2012/01/11 PHP
实现PHP搜索加分页
2016/10/12 PHP
laravel框架学习笔记之组件化开发实现方法
2020/02/01 PHP
TP3.2框架分页相关实现方法分析
2020/06/03 PHP
静态图片的十一种滤镜效果--不支持Ie7及非IE浏览器。
2007/03/06 Javascript
extjs 学习笔记(一) 一些基础知识
2009/10/13 Javascript
js 设置缓存及获取设置的缓存
2014/05/08 Javascript
深入理解JavaScript系列(34):设计模式之命令模式详解
2015/03/03 Javascript
JavaScript中获取HTML元素值的三种方法
2016/06/20 Javascript
JS实现HTML表格排序功能
2016/08/05 Javascript
浅谈js中的引用和复制(传值和传址)
2016/09/18 Javascript
js浏览器html5表单验证
2016/10/17 Javascript
如何使用headjs来管理和异步加载js
2016/11/29 Javascript
利用JQuery阻止事件冒泡
2016/12/01 Javascript
jQuery基于xml格式数据实现模糊查询及分页功能的方法
2016/12/25 Javascript
jQuery实现扑克正反面翻牌效果
2017/03/10 Javascript
微信小程序自定义多选事件的实现代码
2018/05/17 Javascript
在Vue项目中使用jsencrypt.js对数据进行加密传输的方法
2019/04/17 Javascript
关于layui 下拉列表的change事件详解
2019/09/20 Javascript
layui实现多图片上传并限制上传的图片数量
2019/09/26 Javascript
vue计算属性+vue中class与style绑定(推荐)
2020/03/30 Javascript
Request的中断和ErrorHandler实例解析
2018/02/12 Python
解决python大批量读写.doc文件的问题
2018/05/08 Python
对python中的six.moves模块的下载函数urlretrieve详解
2018/12/19 Python
Python3.4解释器用法简单示例
2019/03/22 Python
详解PyQt5中textBrowser显示print语句输出的简单方法
2020/08/07 Python
德国滑雪和户外用品网上商店:XSPO
2019/10/30 全球购物
NYX Professional Makeup俄罗斯官网:世界知名的化妆品品牌
2019/12/26 全球购物
化工工艺专业求职信
2013/09/22 职场文书
大学学年自我鉴定
2013/10/28 职场文书
开展党的群众路线教育实践活动方案
2014/02/05 职场文书
大学教师师德师风演讲稿
2014/08/22 职场文书
意外伤害赔偿协议书
2014/09/16 职场文书
护士年终考核评语
2014/12/31 职场文书
推荐信范文大全
2015/03/27 职场文书
总结一下关于在Java8中使用stream流踩过的一些坑
2021/06/24 Java/Android