题目描述
Class函数阶梯引用会无限展开问题
相关代码
class A {
constructor() {
this.b = new B(this)
}
}
class B {
constructor(root) {
this.root = root
this.c = new C(this)
}
}
class C {
constructor(root) {
this.root = root
console.log(this.root)
}
}
你期待的结果是什么?实际看到的错误信息又是什么?
console.log(this.root) //这里能够无限展开,是我操作又问题吗?
恭喜你,见到了传说中的循环引用。
这对于程序来说没什么问题,反正就是两个地址相互指来指去,也不会造成内容无限分配。