对于JavaScript 来说,括弧()里面不能包含语句,所以在这一点上,解析器在解析function关键字的时候,会将相应的代码解析成function表达式,而不是function声明
所以, 只要将大括号将代码(包括函数部分和在后面加上一对大括号)全部括起来就可以了。
(function sayHello()
{
alert("hello");
}());
还有一种写法也可以, 就是将后面的大括号移出来, as
(function sayHello()
{
alert("hello");
})();