JavaScript返回对象无法按预期工作

时间:2015-03-10 00:53:10

标签: javascript

我有:

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 (

这是为什么?似乎表现得与python类似。 任何对官方文档的引用都将不胜感激。

1 个答案:

答案 0 :(得分:3)

这是因为在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;
    }
  }
}