javascript中匿名函数周围括号的特殊含义是什么?

时间:2015-09-23 15:41:00

标签: javascript operators anonymous-function javascript-objects parentheses

在我的javascript控制台中,带括号的值不会改变输出。

1
=> 1
(1)
=> 1

字符串变量相同:

x = "foo"
=> "foo"
x
=> "foo"
(x)
=> "foo"

变量中的函数相同:

f = function(){}
=> function (){}
f
=> function (){}
(f)
=> function (){}

如果我没有将函数赋值给变量,我会收到错误:

function(){}
=> Uncaught SyntaxError: Unexpected token ((…)

用括号括起匿名函数,我得到了预期的结果:

(function(){})
=> function (){}

为什么会这样?

感谢您的任何见解。

0 个答案:

没有答案