我试图从存储在同一类的另一个函数中的对象内部调用类的函数。我不能使用this,因为它是指对象而不是类。直接通过函数名称调用该函数也不起作用,因为它会引发“未定义”错误。

我有与此等效的代码:

class X extends Y {
    functionA() {
        console.log("Function called!");
    }
    functionB() {
        window.testObject = {
            objectFunction() {
                // I need to call functionA from inside here
            }
        }
    }
}


如何从functionA内部调用objectFunction

最佳答案

您可以在更改self之前简单地将另一个变量(例如this)设置为等于this

class X extends Y {
    functionA() {
        console.log("Function called!");
    }
    functionB() {
        let self = this;
        window.testObject = {
            objectFunction() {
                // I need to call functionA from inside here
                self.functionA();
            }
        }
    }
}

09-17 17:43