Javascript 可以在多个类之间共享数据吗?

Javascript 可以在多个类之间共享数据吗?,javascript,node.js,class,Javascript,Node.js,Class,我想知道是否有可能更改一个类的一个实例中的数据,以便在OOP方法中更改第二个类中的数据 我的意思是 class Data { constructor() { this.data = 5 } } class First extends Data { constructor() { super() } changeData(_data) { this.data = _data } } class Second extends Data { constructor(

我想知道是否有可能更改一个类的一个实例中的数据,以便在OOP方法中更改第二个类中的数据

我的意思是

class Data {
    constructor() { this.data = 5 }
}

class First extends Data {
    constructor() { super() }
    changeData(_data) { this.data = _data }
}

class Second extends Data {
    constructor() { super() }
    changeData(_data) { this.data = _data }
}


const first = new First()
const second = new Second()

first.changeData(7)
console.log(first.data)
console.log(second.data) // I want 7 here as well
或者只是OOP中类之间共享数据的任何解决方案?

更新 我想我已经找到了解决这个问题的办法

const data = {
    name: 'John'
}

class First {
    constructor(data) { this.data = data }
    changeData() { this.data.age = 12 }
}

class Second {
    constructor(data) { this.data = data }
}


const first = new First(data)
const second = new Second(data)

console.log(first.data)
console.log(second.data)

first.changeData()

console.log(first.data)
console.log(second.data)
console.log(data)

可以通过添加手动指定用于存储其成员的对象的功能来解决此问题

在此示例中,
第一个
第二个
具有链接存储,
第三个
第四个
具有链接存储,这与用于
第一个
第二个
的存储不同

类数据{
建造师(仓库){
这个.存储=存储;
this.storage.data=5
}
}
类首先扩展数据{
构造函数(存储){super(存储)}
changeData(_data){this.storage.data=_data}
}
第二类扩展数据{
构造函数(存储){super(存储)}
changeData(_data){this.storage.data=_data}
}
存储={};
const first=新的first(存储)
常数秒=新秒(存储)
storageB={};
const third=新的第一个(storageB)
常数第四=新的第二(存储B)
第一,更改数据(7)
第三,更改数据(21)
console.log(first.storage.data)//7
console.log(second.storage.data)//7
console.log(third.storage.data)//21

console.log(fourth.storage.data)//21
如果您正在使用类,请检查静态标志(在实例之间共享内存),如果您是功能性的,只需跟踪作用域

您必须将相同的引用传递到您希望如何链接
第一个
第二个
?似乎必须以某种方式完成,或者创建另一对
newfirst()
newsecond()
时会发生什么?(也许你也可以解释一下这背后的现实问题。)