JavaScript 返回对象未按预期工作

标签 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。 任何对官方文档的引用将不胜感激。

最佳答案

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

关于JavaScript 返回对象未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28954428/

相关文章:

php - JavaScript 确认消息出错

javascript - 将大型 koa 请求正文上传到 AWS S3 的正确方法是什么?

javascript - 重力模拟中物体缓慢向右漂移

javascript - 重构异步 CoffeeScript 执行 AJAX

javascript - JS 中十六进制到 float 的转换 - Big Endian (ABCD)

JavaScript:如何构建游戏

javascript - 模板加载事件

c# - Web GUI 设计问题

javascript - 查找倒数范围的函数式方法

javascript - 如何在 Office 插件中插入外部图像?