JavaScript创建闭包的两种方式的优劣与区别分析


Posted in Javascript onJune 22, 2015

通常JavaScript创建闭包比较常用的有两种方式。

构造函数方式:

new function() { 
var 变量... 
}

内联执行方式:

(function() { 
var 变量... 
})();

在JavaScript内部运行机制下他们有什么区别?用哪种方式创建比较好?它与其它方式创建的闭包相比有什么优势?

我是这样理解的:

区别:

第一个:子方法可以共享变量
第二个:内部子方法共享变量

比较:

我认为内联的比较好;

优势:

一般内联的创建是按需索要内存,因为只是局部执行的变量在内存里,可以将相关的和具有依赖性的代码组织起来,以便将意外交互的风险降到最低,构造那个所有的方法执行变量都要保存在内存里,这样会影响网页的性能,建议退出前删除变量

当然这只是我的个人理解,其实一般都用闭包需要特别主要在IE内核浏览器下产生内存泄漏,最好是变量使用完就干掉。

以上所述就是本文的全部内容了,希望大家能够喜欢

Javascript 相关文章推荐
最简单的jQuery程序 入门者学习
Jul 09 Javascript
js定义对象或数组直接量时各浏览器对多余逗号的处理(json)
Mar 05 Javascript
解决js正则匹配换行问题实现代码
Dec 10 Javascript
PHP使用方法重载实现动态创建属性的get和set方法
Nov 17 Javascript
JavaScript学习笔记--常用的互动方法
Dec 07 Javascript
vue表单绑定实现多选框和下拉列表的实例
Aug 12 Javascript
vue.js的computed,filter,get,set的用法及区别详解
Mar 08 Javascript
如何使node也支持从url加载一个module详解
Jun 05 Javascript
JavaScript实现的简单Tab点击切换功能示例
Jul 06 Javascript
小程序实现上下移动切换位置
Sep 23 Javascript
如何在wxml中直接写js代码(wxs)
Nov 14 Javascript
浅谈实现在线预览PDF的几种解决办法
Aug 10 Javascript
javascript中使用new与不使用实例化对象的区别
Jun 22 #Javascript
浅谈javascript构造函数与实例化对象
Jun 22 #Javascript
jquery分析文本里url或邮件地址为真实链接的方法
Jun 20 #Javascript
jQuery实现文本框输入同步的方法
Jun 20 #Javascript
jQuery实现带滚动导航效果的全屏滚动相册实例
Jun 19 #Javascript
jquery实现的代替传统checkbox样式插件
Jun 19 #Javascript
JQuery实现的图文自动轮播效果插件
Jun 19 #Javascript
You might like
我的论坛源代码(三)
2006/10/09 PHP
PHP与MySQL开发中页面乱码的产生与解决
2008/03/27 PHP
MySQL连接数超过限制的解决方法
2011/07/17 PHP
PHP两个n位的二进制整数相加问题的解决
2018/08/26 PHP
JS效率个人经验谈(8-15更新),加入range技巧
2007/01/09 Javascript
解决extjs在firefox中关闭窗口再打开后iframe中js函数访问不到的问题
2008/11/06 Javascript
分享一个自定义的console类 让你不再纠结JS中的调试代码的兼容
2012/04/20 Javascript
js中string转int把String类型转化成int类型
2014/08/13 Javascript
jQuery获取上传文件的名称的正则表达式
2015/05/21 Javascript
基于Bootstrap+jQuery.validate实现表单验证
2016/05/30 Javascript
AngularJS中的DOM操作用法分析
2016/11/04 Javascript
easyUI实现(alert)提示框自动关闭的实例代码
2016/11/07 Javascript
Webpack devServer中的 proxy 实现跨域的解决
2018/06/15 Javascript
Nodejs异步回调之异常处理实例分析
2018/06/22 NodeJs
详解angular分页插件tm.pagination二次触发问题解决方案
2018/07/20 Javascript
vue-cli脚手架build目录下utils.js工具配置文件详解
2018/09/14 Javascript
使用jquery实现轮播图效果
2021/01/02 jQuery
Python sys.path详细介绍
2013/10/17 Python
Python ValueError: invalid literal for int() with base 10 实用解决方法
2015/06/21 Python
Python实现类似比特币的加密货币区块链的创建与交易实例
2018/03/20 Python
PyTorch中的C++扩展实现
2020/04/02 Python
Python基于numpy模块实现回归预测
2020/05/14 Python
css3实现元素环绕中心点布局的方法示例
2019/01/15 HTML / CSS
HTML5 视频播放(video),JavaScript控制视频的实例代码
2018/10/08 HTML / CSS
Stokke美国官方网店:高级儿童家具、推车、汽车座椅和配件
2020/06/06 全球购物
大学生村官工作感言
2014/01/10 职场文书
新学期开学寄语
2014/01/18 职场文书
幼儿园中班教学反思
2014/02/10 职场文书
第一批党的群众路线教育实践活动总结报告
2014/07/03 职场文书
幼儿园秋季开学寄语
2014/08/02 职场文书
法律专业大学生职业生涯规划书:向目标一步步迈进
2014/09/22 职场文书
《爱的教育》读书心得
2014/11/08 职场文书
2014办公室年度工作总结
2014/12/09 职场文书
2015小学音乐教师个人工作总结
2015/07/21 职场文书
详解Python flask的前后端交互
2022/03/31 Python
Win10服务主机占用内存怎么办?Win10服务主机进程占用大量内存解决方法
2022/09/23 数码科技