首页 > 代码库 > javascript——面向对象程序设计(3)

javascript——面向对象程序设计(3)

 1     <script type="text/javascript"> 2         //1、结合使用构造函数模式和原型模式 3         //2、动态原型模式 4         //3、计生构造函数模式 5  6         //创建自定义类型的常见方式就是组合使用构造函数模式和原型模式。构造函数模式用于定义是实例属性,而原型模式用于定义 7         //实例属性,而原型用于定义方法和共享的属性。结果,每个实例都会有自己的副本,但同时又共享着对方法的引用,节省内存。 8  9         function Person(name, age, job) {10             var _self = this;11             _self.name = name;12             _self.age = age;13             _self.job = job;14             _self.friends = ["张三", "李四"];15         }16 17         Person.prototype = {18             constructor: Person,19             sayName: function () {20                 alert(this.name);21             }22         }23 24 25         var person1 = new Person("徐磊", 23, "IT");26         var person2 = new Person("刘德华", 55, "歌手");27 28         person1.friends.push("张学友");29         alert(person1.friends);30         alert(person2.friends);31         alert(person1.friends === person2.friends);//false32         alert(person1.sayName === person2.sayName);//true33 34         //待续……35     </script>

 

javascript——面向对象程序设计(3)