JS中prototype的理解

1,JS是基于对象的语言,构造函数本身就是一个对象,当调用new关键字时,会创建一个新对象。2,prototype是对象的一个属性,其可以是一个基本类型,如数字、字符串等,也可以是一个引用类型。
3,当调用new关键字时,如果prototype是一个基本类型,则会复制一份,如果prototype是一个引用类型则会指向原型对象prototype所指向的地址。
4,所以针对通过通过一个构造函数new出来的两个对象A、B,如果prototype是一个基本类型,通过A修改prototype,对B不会有影响;如果prototype是一个引用类型,通过A修改prototype,B的prototype也会随着改变。
JS中prototype的理解
JS中prototype的理解
5,所以,new出新对象后,如果修改构造函数的prototype后,对新对象没有任何影响。
JS中prototype的理解

参考博客:
JS轻松理解之prototype