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


Posted in Javascript onJune 22, 2015

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

构造函数方式:

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

内联执行方式:

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

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

我是这样理解的:

区别:

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

比较:

我认为内联的比较好;

优势:

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

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

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

Javascript 相关文章推荐
js实现二代身份证号码验证详解
Nov 20 Javascript
js实现的黑背景灰色二级导航菜单效果代码
Aug 24 Javascript
基于jquery实现鼠标滚轮驱动的图片切换效果
Oct 26 Javascript
鼠标点击input,显示瞬间的边框颜色,对之修改与隐藏实例
Dec 26 Javascript
Angular.js基础学习之初始化
Mar 10 Javascript
js 获取json数组里面数组的长度实例
Oct 31 Javascript
在Swiper内如何制作CSS3动画效果示例代码
Dec 07 Javascript
浅谈使用React.setState需要注意的三点
Dec 18 Javascript
React组件内事件传参实现tab切换的示例代码
Jul 04 Javascript
傻瓜式vuex语法糖kiss-vuex整理
Dec 21 Javascript
在vue+element ui框架里实现lodash的debounce防抖
Nov 13 Javascript
vue实现短信验证码输入框
Apr 17 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
PHP 导出数据到淘宝助手CSV的方法分享
2010/02/27 PHP
纯php打造的tab选项卡效果代码(不用js)
2010/12/29 PHP
基于CI框架的微信网页授权库示例
2016/11/25 PHP
PHP执行linux命令6个函数代码实例
2020/11/24 PHP
基于jquery的仿百度的鼠标移入图片抖动效果
2010/09/17 Javascript
基于jquery实现的表格分页实现代码
2011/06/21 Javascript
JS+CSS制作DIV层可(最小化/拖拽/排序)功能实现代码
2013/02/25 Javascript
使用jquery.qrcode生成彩色二维码实例
2014/08/08 Javascript
jQuery表格列宽可拖拽改变且兼容firfox
2014/09/03 Javascript
生成二维码方法汇总
2014/12/26 Javascript
浅析JS运动
2015/12/28 Javascript
jQuery动态增减行的实例代码解析(推荐)
2016/12/05 Javascript
Node.js的Mongodb使用实例
2016/12/30 Javascript
浅谈node中的exports与module.exports的关系
2017/08/01 Javascript
nuxt中使用路由守卫的方法步骤
2019/01/27 Javascript
微信小程序实现下滑到底部自动翻页功能
2020/03/07 Javascript
Vue中通过vue-router实现命名视图的问题
2020/04/23 Javascript
[01:24:51]2014 DOTA2华西杯精英邀请赛 5 25 LGD VS NewBee第二场
2014/05/26 DOTA
[06:53]2018DOTA2国际邀请赛寻真——为复仇而来的Newbee
2018/08/15 DOTA
[32:39]完美世界DOTA2联赛循环赛 Forest vs Inki BO2第一场 11.04
2020/11/04 DOTA
python进程类subprocess的一些操作方法例子
2014/11/22 Python
Python XML RPC服务器端和客户端实例
2014/11/22 Python
python正则表达式match和search用法实例
2015/03/26 Python
python获取当前用户的主目录路径方法(推荐)
2017/01/12 Python
python Matplotlib画图之调整字体大小的示例
2017/11/20 Python
python求质数列表的例子
2019/11/24 Python
Anaconda 查看、创建、管理和使用python环境的方法
2019/12/03 Python
keras中的卷积层&池化层的用法
2020/05/22 Python
pandas使用函数批量处理数据(map、apply、applymap)
2020/11/27 Python
Keds官方网站:购买帆布运动鞋和经典皮鞋
2016/11/12 全球购物
狗狗玩具、零食和咀嚼物的月度送货服务:Super Chewer
2018/08/22 全球购物
乡镇党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
个人遵守党的政治纪律情况对照检查材料思想汇报
2014/09/25 职场文书
大学生团员个人总结
2015/02/14 职场文书
用Python爬取各大高校并可视化帮弟弟选大学,弟弟直呼牛X
2021/06/11 Python
简单聊聊TypeScript只读修饰符
2022/04/06 Javascript