ES6 Class 函数之间引用问题

题目描述

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) //这里能够无限展开,是我操作又问题吗?
图片描述

阅读 2.5k
1 个回答

恭喜你,见到了传说中的循环引用。

这对于程序来说没什么问题,反正就是两个地址相互指来指去,也不会造成内容无限分配。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题