1.JS中重写原型对象切断了现有原型与任何之前已经存在的对象实例之间的联系,它们引用的仍然是最初的原型。但是可以修改原型中的方法或者属性,或者添加新的属性或者方法。
2.原型模式来创建对象,其共享性也会带来问题。比如单独使用原型模式时,改变原型中的属性,所有实例都会跟着改变。所以,我们一般组合使用构造函数模式和原型模式。
3.构造函数模式用于定义实例属性,而原型模式用于定义方法和共享的属性。并且构造函数模式还可以向构造函数传入参数。
4.动态原型模式:把所有信息封装在了构造函数中,而通过在构造函数中初始化原型(仅在毕必要的情况下),又保持了同时使用构造函数和原型的优点。