javascript - 从函数输出读取属性

标签 javascript

(function(){
  function sayHello(){
    var name = "Hi John";
    return
    {
      fullName: name
    }
  } 

  console.log(sayHello().fullName);
})();

控制台会输出

Uncaught TypeError: Cannot read property 'fullName' of undefined

我从一本面试练习册上读到了这个问题,但我无法理解其背后的原因,有人可以帮助我吗?

最佳答案

这里的问题是在 return 语句后自动插入分号。

您不能将代码放在 return 语句后的新行上,因为 javascript 会自动将 ; 与 return 语句放在同一行,而其余代码将被忽略。

(function(){
  function sayHello() {
    var name = "Hi John";
    return { fullName: name };
  }

  console.log(sayHello().fullName);
})();

关于javascript - 从函数输出读取属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51351724/

相关文章:

javascript - 使用填充方法创建二维数组

javascript - 如何在 RSK 上获取诸如 ERC20 代币符号之类的信息?

javascript - 从 ajax 抓取数据

javascript - 如何防止授权用户将我的网站嵌入到移动应用程序中

javascript - Jade 。遍历文件目录

javascript - 输入 URL 的处理部分

javascript - 这是什么类型的 Javascript 函数?

javascript - 如何使用 React Router v4 访问 React 应用程序之外的历史实例?

javascript - 将类别的文本放在每个栏下方

javascript - d3.js - d3.select ("#id).remove() or .attr("类”, "hidden")不工作