//例子: //人,都有姓名,性別,年齡, 吃飯, 睡覺, 玩 //學生,都有姓名,性別,年齡, 成績, 吃飯, 睡覺, 玩 ,學習的行爲 //js中經過原型來實現繼承 function Person(name, age, sex) { this.name = name; this.sex = sex; this.age = age; } Person.prototype.eat = function () { console.log("人能夠吃東西"); }; Person.prototype.sleep = function () { console.log("人在睡覺"); }; Person.prototype.play = function () { console.log("生活就是不同的玩法而已"); }; function Student(score) { this.score = score; } //改變學生的原型的指向便可==========>學生和人已經發生關係 Student.prototype = new Person("小明", 10, "男"); Student.prototype.study = function () { console.log("學習很累很累的哦."); }; //相同的代碼太多,形成了代碼的冗餘(重複的代碼) var stu = new Student(100); console.log(stu.name); console.log(stu.age); console.log(stu.sex); stu.eat(); stu.play(); stu.sleep(); console.log("下面的是學生對象中本身有的"); console.log(stu.score); stu.study();
改變學生的原型的指向後==========>學生和人已經發生關係,產生原型鏈,則學生裏面有人的屬性和方法以及本身的屬性和方法