您好,具有以下JavaScript函数。当我调用它时,它返回undefined
。我希望它返回一个对象。为什么返回undefined
?
function someFunction() {
return
{
name: 'Mary'
};
}
例如:
谢谢
答案 0 :(得分:3)
return
语句受自动分号插入(ASI)的影响。 return关键字和表达式之间不允许使用行终止符。
在JavaScript return
中,后面没有任何内容(在同一行中)的值为return;
function someFunction() {
console.log('function called');
return{
name: 'Mary'
};
}
var o = someFunction();
console.log(o);
答案 1 :(得分:3)
在javascript中,;
是可选的。
因此,您的浏览器将这样解释您的代码:
function someFunction() {
return; // It adds automatically a semi colon here
{
name: 'Mary'
};
}
因此,如果您希望它能够正常工作,则需要这样做
function someFunction() {
return{
name: 'Mary'
};
}