javascript - Chrome和Firefox控制台中的 'undefined'调用可以删除吗?

标签 javascript firefox google-chrome console

我有一个与此类似的 JavaScript 对象:

var profile1 = {
    one: "1",
    two: "2"
}

var profile2 = {
    one: "3",
    two: "4"
}

function runLoop () {
    console.log(this.one);
}

profile1.loop = runLoop;
profile2.loop = runLoop;

profile1.loop();

因此 profile1.loop() 在这种情况下将运行良好并返回字符串值“1”。但如果我尝试从 Chrome 或 Firefox 的控制台运行它,“1”仍然会返回,但随后会发出一条“未定义”消息。

这个问题可以解决吗,还是我在这里追着尾部?

最佳答案

当您在控制台中看到undefined时,这意味着您刚刚计算的语句没有返回值。因此,无论您说什么,您正在评估的都不会返回值。

这里令人困惑的是,您正在将 this.one 写入控制台,而不是返回它。

试试这个:

function runLoop () {
    return this.one;
}

关于javascript - Chrome和Firefox控制台中的 'undefined'调用可以删除吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7373187/

相关文章:

javascript - 检测并记录外部 JavaScript 或 CSS 资源无法加载的时间

javascript - Vue.js : Failed to mount component: template or render function not defined

javascript - 谷歌浏览器 Javascript 调试器

css - Safari 和 Chrome CSS 表格行定位 z-index 问题(适用于 Firefox)

javascript - 使用 knockoutjs 虚拟元素动态创建 html 部分

c# - 部分回发后谷歌地图不显示

firefox - 在其他应用程序中使用 'firefox location bar' 搜索

php - 只有 IE 才能正确运行我的 PHP/MySQL 查询!

javascript - 使用 Add-on SDK 在 Firefox 中访问 navigator.plugins

python-3.x - Linux服务器中的Python Selenium "Can not connect to the Service %s"% self.path