关于JS中的方法是否加括号的问题
投稿:mrr
在我们js编写程序的时候,我们会写很多函数然后调用它们,那么这些函数调用的时候什么时候加()什么时候不加()呢?下面小编给大家简单介绍下
在我们js编写程序的时候,我们会写很多函数然后调用它们,那么这些函数调用的时候什么时候加()什么时候不加()?记住以下几个要点。
(1)函数做参数时都不要括号。
function fun(e) { alert(e); } function A(fun, e) { fun(e); } A(fun, 3);//弹出'3',函数fun当做实参传入另一个函数时,不加()
(2)函数被调用的时候都要加括号。
看上面那段代码,第9行函数A被调用的时候是A();
(3)函数作为赋值符号右边的时候,当无()时传递的是函数这个对象,有()时传递的是函数的返回值。
function Fun() { return 1; } var a = Fun(); //此时的a = 1 var b = Fun; //b是一个函数的引用
不加()的函数名作为了一个函数的引用,或者说是一个指针,用于传递函数所在的位置,需要时找到这个函数去执行。