Heim > Fragen und Antworten > Hauptteil
Wenn ein Objekt nach der Instanziierung neue Attribute haben soll, können Sie diese dann nur über den Prototyp hinzufügen? Warum kann der Konstruktor nicht geändert werden?
Könnte der Grund sein, dass die Existenz seiner Eigenschaften und Methoden nach der Instanziierung eines Objekts nichts mit dem Konstruktor zu tun hat?
大家讲道理2017-05-19 10:31:49
prototype被称为原型链。
1、一个对象实例化后,是可以直接Object.name添加的。至于通过原型链添加的,是添加的公有属性,其他通过相同类实例的对象都可以访问。
2、实例化后的对象是无法访问原型链,原型链只有Class才会有,并且,原型链的属性和方法是通过Class.prototype来添加的。构造函数也是属于原型链方法,你可以修改你通过实例后获得的构造函数,不过无法影响Class的构造函数,并且会随着Class.prototype的更改而更改。
至于实例化后的对象想要使用在原型链中定义的属性与方法,可以直接Object.name来进行使用。
你可以去看一下有关原型链的知识,百度一搜有很多。
本人也是新人,不足之处,望指出。