javascript - 对象文字表示法中的方法记录到控制台,但也记录未定义

标签 javascript methods console undefined object-literal

我使用对象文字表示法创建了一个对象,其中有几个方法已记录到控制台以确保它们正常工作。每种方法都显示在我的控制台中。但在记录每个方法后,立即返回“未定义”,我不明白为什么。

我搜索了与对象文字表示法相关的问题,但没有看到与此特定问题相关的任何内容。

我什至浏览了 MDN 来处理对象。有件事告诉我这可能是一个简单的错误。有没有人有什么建议?

这是我正在使用的代码:

var car = {
    name: 'Magic',
    make: 'Nissan',
    model: 'Sentra',
    mileage: 79000,
    year: 2002,
    owned: true,
    start: function() {
        console.log('Car is turned on!');

    },
    off: function() {
        console.log('This car has not been turned on. Do you have the key?');
    }

};

console.log(car);
console.log(car.start());
console.log(car.off());

最佳答案

通过将 car.start() 传递给 console.log,您将记录 car.start 的返回值,该值隐式 未定义。要修复此问题,只需更改代码以仅调用对象上的方法,这些方法已经记录到控制台。

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/return

关于javascript - 对象文字表示法中的方法记录到控制台,但也记录未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51867200/

相关文章:

javascript 无法在本地工作,但可以在 jsfiddle 中工作

javascript - Handsonetable - 无法隐藏列

javascript - 如何将 div View 的动画滚动到特定的 x 和 y 坐标

javascript - Vanilla JavaScript 代码在控制台中运行,但不能在 (greasemonkey) 脚本中运行

c++ - 将标准输出重定向回控制台

javascript - 为什么 Angular-Promise-Tracker 不适合我?

java - 如何使用一种方法在一行上一次打印一个字符

java - 显示不同表格内容的方法,重复标题问题

Scala 函数/方法参数化返回类型

c# - 控制台应用程序等待 keyup