我正在尝试执行以下JS代码;
var foo = {
func1:function(){
function test()
{
alert("123");
}();
alert("456");
},myVar : 'local'
};
上面的代码有什么问题?
最佳答案
您有语法错误:
var foo = {
func1:function() {
function test() {
alert("123");
}();
// ^ You can't invoke a function declaration
alert("456");
},myVar : 'local'
};
假设您想要一个立即调用的函数,您将不得不将该函数解析为表达式:
var foo = {
func1:function() {
(function test() {
// ^ Wrapping parens cause this to be parsed as a function expression
alert("123");
}());
alert("456");
},myVar : 'local'
};