js的寄生組合繼承法
程式碼:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<h1>寄生組合繼承法</h1>
</body>
<script>
/*
寄生組合繼承法
最終繼承解決方案(完美方案):寄生組合繼承法
* 繼承屬性:借用建構函式
* 繼承方法:原型式繼承法
*/
function Person(name,age){
this.name=name;
this.age=age;
}
Person.prototype={
say(){
console.log("說")
},
eit(){
console.log("吃")
},
sleep(){
console.log("睡")
}
}
function Man(name,age){
//借用建構函式繼承方法
Person.call(this,name,age)
}
Man.prototype=inherit(Person.prototype);
//原類式繼承方法
function inherit(a){
//建立一個臨時建構函式
function F(){
}
// 將傳入的物件作為這個建構函式的原型
F.prototype=a;
// 返回臨時否則函式的例項
return new F();
}
let m =new Man("litingchen",99)
</script>
</html>