这是Javascript的陷阱之一:自动分号插入。不以分号结尾但可能是语句结尾的行会自动终止,因此您的第一个示例实际上是这样的:
function test(){ return; // <- notice the inserted semicolon { javascript: "fantastic" };}在第二个示例中,您返回一个对象(由花括号构建),该对象的属性
javascript及其值为
"fantastic",实际上与此相同:
function test() { var myObject = new Object(); myObject.javascript = "fantastic"; return myObject;}


