一、动态原型模式
在面向对象学习六中的随笔中,了解到组合构造函数模式和原型模式创建的自定义类型可能最完善的!但是人无完人,代码亦是如此!...动态原型模式将所有的信息都封装在构造函数中(包括原型和实例属性),通过在构造函数中实例化原型(仅在必要的情况下)实现封装,又保持了同时使用构造函数和原型的优点。...当第一次实例化Person对象的时候,原型就已经完成初始化,所以当第二次实例化的时候,原型就不会初始化,而且if语句检查的可以是原型的任意属性和方法,不需要每一个都检查,只需要检查其中一个,对于采用这种模式创建的自定义类型...=person1.constructor); //输出:true 说明两个实例的原型对象的constructor属性都指向Person构造函数即他们是同一类型
二、寄生构造函数模式
当你需要创建一个自定义类型的时候...这种模式的基本思想是创建一个函数,该函数的作用仅仅是封装创建对象的代码。