JavaScript 返回对象未按预期工作

JavaScript returning object not working as expected

本文关键字:工作 返回 对象 JavaScript      更新时间:2023-09-26

我有:

var doBlah = function(param0) {
  return {
    objectMember: function( param1 )
    {
        var a  = param1;
    }
  }
}

这工作正常,但是当我做不同的缩进时:

var doBlah = function(param0) {
  return
  {
    objectMember: function( param1 )
    {
        var a  = param1;
    }
  }
}

我收到以下错误:Uncaught SyntaxError: Unexpected token (

这是为什么呢?似乎行为类似于蟒蛇。任何对官方文档的引用将不胜感激。

这是因为在 js 中,新行可以被视为语句的结尾,因此您的代码看起来像

var doBlah = function(param0) {
  return ;//this is ended here
  { //here you have block definition starting
    objectMember: function( param1 )//now you have an invalid syntax here
    {
        var a  = param1;
    }
  }
}

所以

var doBlah = function(param0) {
  return {
    objectMember: function( param1 )
    {
        var a  = param1;
    }
  }
}
  • 自动插入分号
  • 返回 - 自动插入分号