使用 JavaScript 从另一个 class 函数调用 class 函数

Calling class functions from another class function with JavaScript

我这里有这段代码:我想做的是从 class B.

中调用位于 class A 中的函数 'counterAdder'

然后我应该创建一个 A 的实例和一个 B 的实例,然后调用 'counterAdder' 函数来更新 A 的 'counter' 项的实例。

当我运行这段代码时,它输出为0,但我需要1。

class A {
     constructor(){
          this.counter = 0;
     }
}

class B{
     constructor(){
     }
     counterAdder(){
          A.counter +=1;
     }
}

const a = new A();
const b = new B();

b.counterAdder();

console.log(a.counter) // => 1

当来自 'b' 的操作是 运行 时,我似乎无法弄清楚如何让 'a' 更新。

我无法修改 class A 和 class B 之外的任何内容,只能使用纯 JavaScript.

以下代码:

counterAdder(){
          A.counter +=1;
}

没有做你想做的事。相反,它添加了一个新的 属性 (或其他东西,我不确定为什么它甚至首先起作用)。您要做的是修改 a 的计数器,即您分配给 A 的变量。所以改为这样做:

counterAdder(){
          a.counter +=1;
}