【问题标题】:Javascript why does this function returns undefined [duplicate]Javascript为什么这个函数返回未定义的[重复]
【发布时间】:2018-03-08 14:21:13
【问题描述】:

看看下面的代码,解释一下为什么它返回undefined而不是变量。

function aaa() {
  return
  {
    test: 1
  };
}
console.log(aaa());

【问题讨论】:

  • return 是一个声明。如果在同一行后面没有任何内容,则返回 undefined
  • @JJJ 我回滚了编辑,但问题同时被标记为欺骗。这导致了这个问题。再次回滚编辑。
  • @PatrickRoberts 我并没有试图解决任何问题。我使用固定格式的 sn-p 改进了编辑。我的意图不是修复它。

标签: javascript function javascript-objects


【解决方案1】:

因为你换行了:

function aaa() {
  return {
    test: 1
  };
}
console.log(aaa());

【讨论】:

  • 只是一个指针,对于此类问题,请寻找类似的帖子并将其标记为重复。重复回答是一种不好的做法。
【解决方案2】:

这是因为return 末尾的新行(自动分号插入)。

试试:

function aaa() {
  return {
     test: 1
  };
}
console.log(aaa());

【讨论】:

  • 只是一个指针,对于此类问题,请寻找类似的帖子并将其标记为重复。重复回答是一种不好的做法。
  • @Rajesh 我找不到原来的问题好友,否则我不会问
  • @kannan 以上评论不适合您。它是为 CD 设计的。重点是,这个问题的解释很简单,所以人们选择回答而不是寻找重复。这是错误的。如果您知道解决方案,则更有可能更好地对搜索查询进行措辞以找到合适的重复项。
猜你喜欢
  • 2011-05-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-14
  • 2014-08-28
  • 2020-12-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多