标签:
好文章链接:http://www.cnblogs.com/asqq/archive/2013/02/01/3194993.html
好的对象声明方式:
目前最为常用的定义类型方式,是组合构造函数模式与原型模式。构造函数模式用于定义实例的属性,而原型模式用于定义方法和共享的属性。结果,每个实例都会 有自己的一份实例属性的副本,但同时又共享着对方方法的引用,最大限度的节约内存。此外,组合模式还支持向构造函数传递参数,可谓是集两家之所长。
function Person(name, age, job) {this.name = name;this.age = age;this.job = job;this.lessons = [‘Math‘, ‘Physics‘];}Person.prototype = {constructor: Person,//原型字面量方式会将对象的constructor变为Object,此外强制指回PersongetName: function () {return this.name;}}var person1 = new Person(‘Jack‘, 19, ‘SoftWare Engneer‘);person1.lessons.push(‘Biology‘);var person2 = new Person(‘Lily‘, 39, ‘Mechanical Engneer‘);alert(person1.lessons);//Math,Physics,Biologyalert(person2.lessons);//Math,Physicsalert(person1.getName === person2.getName);//true,//共享原型中定义方法
标签:
原文地址:http://www.cnblogs.com/baoliwei/p/4476301.html