立即调用匿名函数的两种方式(function(d){ }() );和 (function(x){ } )();.
Two ways of immediate call to anonymous function (function(d){ }() ); and (function(x){ } )();
我可能的重复项:
在 JavaScript 中,"(function ( ( { } ( ( (" 和 "(function ( ( { } ( ( (" 在 JavaScript 中功能是否相等?
的问题有这些特殊字符,我找不到一个好的答案。(有谁知道如何用它们搜索?
我已经看到了两种立即调用匿名函数的模式 http://jsfiddle.net/ukqS8/1/
(function(d) {
document.write(d*2);
})(3);
和
(function(x) {
document.write(x*2);
}(3));
区别在于放置 (3( 的位置:右括号内或外。
我在这里找到了对第二种情况的一个很好的解释:
JavaScript 函数 vs. ( function(( { ... } (((;
我理解为function(x) {...}
创建一个函数对象,(3( 成为它的参数,并且封闭 (( 告诉解释器里面是一个语句。
在第一种情况下,它似乎(function(d) {...})
一个以某种方式也是一个函数的语句,然后将 (3( 应用于该语句/函数。
因此,它们似乎都以相同的方式执行。这里真的有区别吗?范围(我对此表示怀疑(?这两种选择是否更可取?
你的理解是不正确的。
这些都是函数表达式;括号的位置在这里没有区别。
但是,可能存在细微的区别。
它们的执行完全相同。区别仅在于语法。
相关文章:
- 为什么这在IE中的工作方式与在Firefox中不同
- 在AngularJS应用程序中使用封装指令和路由的推荐方式是什么
- Windows8应用程序(html&Javascript):从图片库(除了文件选择器)显示图像的另一种方式
- 直接在函数声明上使用function.prototype.bind
- jQuery:.click(function(){(element),collapse('show',f
- 在localhost Dev Box上测试JSONP请求的最佳方式
- 使用javascript存储变量的最安全方式
- 以可优化的方式使用requirejs加载模板
- 在Highcharts中,我们可以通过任何方式在渲染图表之前获得plotWidth和plotHeight
- 任何方式使AJAX调用Gmail API,而无需通过JS库
- 为react组件传递道具的最佳方式
- 让Webpack管理Quirky AMD定义的最佳方式
- 在承诺链中处理早期回报的最佳方式
- 如何“;过滤器”;或者以其他方式重构该数据
- 如果连接类型为none,则Javascript Function Only警报
- 您有更好的动态方式来缩短复杂的代码jquery吗
- 在ng重复循环中显示条件内容的最佳方式是什么
- 是 $.ajax() jQuery 缩短普通代码的方式: function loadXMLDoc() { var xml
- 立即调用匿名函数的两种方式(function(d){ }() );和 (function(x){ } )();.
- “function"Javascript中没有定义错误:调用函数的正确方式是什么?