搜索

首页  >  问答  >  正文

javascript - 一个对象实例化后是否就跟构造函数无关系了?要修改只能找原型对象?

当一个对象已实例化后,如想使其具有新的属性,是否只能通过prototype去添加?为什么不能修改构造函数?
原因是否是,当一个对象已实例化之后,在其属性与方法的存续上就跟构造函数无关系了?

阿神阿神2747 天前530

全部回复(1)我来回复

  • 大家讲道理

    大家讲道理2017-05-19 10:31:49

    prototype被称为原型链。
    1、一个对象实例化后,是可以直接Object.name添加的。至于通过原型链添加的,是添加的公有属性,其他通过相同类实例的对象都可以访问。
    2、实例化后的对象是无法访问原型链,原型链只有Class才会有,并且,原型链的属性和方法是通过Class.prototype来添加的。构造函数也是属于原型链方法,你可以修改你通过实例后获得的构造函数,不过无法影响Class的构造函数,并且会随着Class.prototype的更改而更改。
    至于实例化后的对象想要使用在原型链中定义的属性与方法,可以直接Object.name来进行使用。
    你可以去看一下有关原型链的知识,百度一搜有很多。
    本人也是新人,不足之处,望指出。

    回复
    0
  • 取消回复