如何从同一个类中的方法访问类数据成员[重复]

问题描述 投票:0回答:1

这个问题在这里已有答案:

我有一个类,它有一个构造函数。我通过this.something分配一个类变量,而不是在同一个类中的另一个函数中访问它。

以下是我的课

class A {
    some_func() {
        console.log(this.var1);  // this is giving undefined
    }
    constructor(socket, var1) {
        this.socket = socket;
        this.var1 = var1;

        this.socket.on('some event', some_func);
    }
}

some_func函数内部,变量是未定义的。我该如何解决这个问题?

javascript class methods event-handling
1个回答
0
投票

我没有看到你的代码有问题。在使用该方法之前,您是否确实在实例化变量?如下所示

class A {

    constructor(socket, var1) {
        this.socket = socket;
        this.var1 = var1;

        //this.socket.on('some event', this.some_func);
    }
    
    some_func() {
        console.log(this.var1);  // this is giving undefined
    }
}

var instanceA = new A('socket', 'var')

instanceA.some_func() // Returns 'var'
© www.soinside.com 2019 - 2024. All rights reserved.