两个javascript函数不能以相同的方式工作

Ruh*_*min 0 javascript

我写了2个javascript函数,但它们的工作方式不同.

console.log(func2());未定义.谁能告诉我为什么以及如何解决这个问题?

function func1()
{
  return {
      bar: "hello"
  };
}

function func2()
{
  return
  {
      bar: "hello"
  };
}

console.log(func1());
console.log(func2());
Run Code Online (Sandbox Code Playgroud)

T.J*_*der 7

这是因为自动分号插入.永远不要return你要返回的内容之前和之前放置换行符,它被视为终止return语句(例如,a ;之后插入return),并且你的函数最终会有效地返回undefined.