这篇文章主要介绍了JavaScript创建闭包的两种方式的优劣与区别分析的相关资料,需要的朋友可以参考下
通常JavaScript创建闭包比较常用的有两种方式。
构造函数方式:
?
1 2 3 new function() { var 变量... }内联执行方式:
?
1 2 3 (function() { var 变量... })();在JavaScript内部运行机制下他们有什么区别?用哪种方
我是这样理解的:
区别:
第一个:子方法可以共享变量
第二个:内部子方法共享变量
比较:
我认为内联的比较好;
优势:
一般内联的创建是按需索要内存,因为只是局部执行的变量在内存里,可以将相关的和具有依赖性的代码组织起来,以便将意外交互的风险降到最低,构造那个所有的方法执行变量都要保存在内存里,这样会影响网页的性能,建议退出前删除变量
当然这只是我的个人理解,其实一般都用闭包需要特别主要在IE内核浏览器下产生内存泄漏,最好是变量使用完就干掉。
以上所述就是本文的全部内容了,希望大家能够喜欢
新闻热点
疑难解答