new function(settings){...}(jQuery.query || {}); 是什么意思?在 JavaScript 中是什么意思?
代码示例是这里。
大代码块以
new function(settings) {
开始并结束
}(jQuery.query || {}); // Pass in jQuery.query as settings object
“这个技巧的作用是什么?”
。为什么Eclipse在这里发现2个错误? Eclipse 一开始就不喜欢新事物。我可以直接删除它吗?另外,Eclipse 希望 ]
在末尾“完成 NewExpression”。
这意味着什么?如何用[]
写这个?
The code sample is here.
The big code chunk starts with
new function(settings) {
and ends with
}(jQuery.query || {}); // Pass in jQuery.query as settings object
What does this trick do?
Why does Eclipse find 2 errors here? Eclipse dislikes new at the beginning. May I just remove it? Also Eclipse wishes ]
at the end to "to complete NewExpression".
What does this mean? How to write this with []
?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
调用它
这将创建一个匿名函数并作为参数
。尝试
在萤火虫中。
This creates an anonymous function and invokes it with
as the parameter.
try
in firebug.
这是创建自调用 JavaScript 函数的一种方法。它只是一个只需快速挥动手腕即可声明和调用的函数。
http://sparecycles.wordpress.com/2008/06/29/advanced- javascript/
Eclipse 抱怨的是什么并不太清楚。该语法是完全有效的 - 可能只是 Eclipse 无法正确处理它。
编辑:传递的参数:
(jQuery.query || {})
将 jQuery.query 传递给函数。如果 jQuery.query 为 null、false、零或未定义(falsey),则将传递一个空对象文字,避免空引用。It is one way of creating a self-invoking javascript function. It's simply a function that is declared and invoked in one swift flick of the wrist.
http://sparecycles.wordpress.com/2008/06/29/advanced-javascript/
What Eclipse is complaining about is not really clear. The syntax is completely valid - it might just be that Eclipse cannot handle it properly.
EDIT: The argument that is passed:
(jQuery.query || {})
passes jQuery.query to the function. If jQuery.query is null, false, zero or undefineded (falsey), an empty object literal will be passed instead, avoiding a null reference.new function
构造正在定义一个新函数。它适用于主要浏览器,但最好使用稍微不同的语法。这里我们定义了一个函数,然后立即调用它。在您的代码中,该函数还传递了一个参数。
Eclipse 的抱怨可能是一个错误。
The
new function
construction is defining a new function. It works in major browsers, but it is preferred to use slightly different syntax.Here we define a function and then immediately call it. In your code, the function is also passed a parameter.
The Eclipse complaining is probably a bug.