这是什么“(函数(){});”,括号内的一个函数,意味着在JavaScript?

可能重复:
这是什么意思? (function(x,y)){…}){a,b); 在JavaScript
围绕JavaScript对象/函数/类声明的括号是什么意思?

大家好

我不知道以下几点:

(function(){ // Do something here ... })(someWord) //Why is this here?; 

我的问题是:

  1. 将函数放入方括号中的含义是什么.ie (function(){});
  2. 在一个函数的末尾,括号是怎么做的呢?

我通常看到这些在jQuery代码,和其他一些JavaScript库。

6 Solutions collect form web for “这是什么“(函数(){});”,括号内的一个函数,意味着在JavaScript?”

您立即使用特定的参数调用anonymus函数。

一个例子:

 (function(name){ alert(name); })('peter') 

这提醒“ 彼得 ”。

在jQuery的情况下,你可能会传递jQuery作为参数,并在你的函数中使用$ 。 所以你仍然可以在noConflict模式下使用jQuery,但使用方便的$

 jQuery.noConflict() (function($){ var obj = $('<div/>', { id: 'someId' }); })(jQuery) 

你正在做一个函数,立即被调用, someWord作为参数。

基本上这可以让你声明一个匿名函数,然后把它括在圆括号中,并写(someWord)你正在运行的function。 你可以把它看作声明一个对象,然后立即实例化对象。

它用于创build匿名函数(没有可以嵌套在其他函数中的名称的函数)并将parameter passing给该函数。 someWord作为parameter passing,函数可以使用关键字“arguments”读取它。

用法的简单例子:

 function Foo(myval) { (function(){ // Do something here alert(arguments[0]); })(myval); //pass myval as argument to anonymous function } ... Foo(10); 

这是定义一个匿名函数然后立即执行它的一种方法 – 不会留下任何痕迹。 函数的范围是真正的本地。 最后的()括号执行该函数 – 括号括起来是为了消除正在执行的内容。

也许这篇文章会帮助你一点。

  • Scala类的构造函数参数
  • Python中的字符范围
  • 混合extern和const
  • $ .getJSON函数中设置的variables只能在函数内访问
  • Spring Java Config:如何用运行时参数创build一个原型范围的@Bean?
  • 如何使用小数点范围()的步骤值?
  • 用“(function(){...})()”等匿名函数包装整个Javascript文件的目的是什么?
  • 节点式的需要在浏览器中的JavaScript?
  • Chrome扩展程序代码与内容脚本与注入的脚本
  • 为什么在lambdas中隐式捕获const int(或shorts)?
  • 为什么在Python 3中“1000000000000000(1000000000000001)”这么快?