javascript - Uncaught ReferenceError : "method" is not defined

标签 javascript object methods referenceerror

我创建了一个 JavaScript 对象

var Article = function(data) {
    this.foo = data,
    this.get_more_data = function() {
        // do something, get a response
        show_data(response);
    },
    this.show_data = function(bar) {
        //do something with bar;
    }
};

当 show_data 方法没有这样编写时,它可以正常工作。但在对象之外无法访问它。有了这个。我从 Chrome 控制台收到“Uncaught ReferenceError”。

这是为什么?

谢谢。

最佳答案

您应该将 show_data 作为 this 的方法来调用,而不是作为作用域为当前上下文的函数:

var Article = function(data) {
    this.foo = data,
    this.get_more_data = function() {
        // do something, get a response
        this.show_data(this.foo);
    },
    this.show_data = function(bar) {
        console.log(bar);
    }
};

关于javascript - Uncaught ReferenceError : "method" is not defined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25127224/

相关文章:

java - 基本文件读取到数组存储

Javascript 发布/订阅实现适用于函数,但不适用于对象的方法

javascript - 为什么 windows.focus() 在所有情况下都不起作用 IE11

javascript - 如何使用 Node.js 在 xml 中查找空元素?

Javascript 将对象作为函数参数传递

java - 如何将对象转换为输入流

python - 绑定(bind)和未绑定(bind)方法对象的 id() --- 有时不同对象相同,有时相同对象不同

php - 使用OAuth验证应用程序以访问融合表

javascript - 如何延迟函数返回,直到发生点击之后

java - 是否可以在执行时查看对对象的所有引用?