其他分享
首页 > 其他分享> > 在Class中方法写在constructor里面与外面的区别

在Class中方法写在constructor里面与外面的区别

作者:互联网

class A {
    constructor() {
        this.inside = function () {};
    }
    outside() {}
}
const a1 = new A();
const a2 = new A();
console.log(a1.outside === a2.outside); // true
console.log(a1.inside === a2.inside); // false

可以看出,由于outside是挂载在原型链上的方法,因此不同的实例对象的outside都是完全相等的;
对于inside而言,在使用new关键字实例化的时候,new的内部实现中,会改变this指向,所以每个实例的inside方法是不一样的.

标签:外面,实例,inside,a1,outside,a2,constructor,new,Class
来源: https://www.cnblogs.com/UmaruChan/p/16257785.html