第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

js 繼承

js 繼承

wy57 2015-06-15 14:32:56
var Mammal=function(name){ this.name=name; }; Mammal.prototype.get_name=function(){ return this.name; }; Mammal.prototype.says=function(){ return this.saying || ""; }; var myMammal=new Mammal("Herb the Mammal"); var name=myMammal.get_name();alert(name)Function.method("inherits",function(Parent){ this.protetype=new Parent(); return this; });//這裡報錯——沒有該方法。這個Function.method()方法不應該是系統方法嗎? var Cat=function(name){ this.name=name; this.saying="meow"; } .inherits(Mammal) .method("purr",function(n){ var i,s=""; for(i=0;i<n;i+=1){ if(s){ s+="-"; } s+="r"; } return s; }) .method("get_name",function(){ return this.says()+" "+this.name+" "+this.says(); }); var myCat=new Cat("Henrietta"); var says=myCat.says();alert("says"+says) var purr=myCat.purr(5);alert(" purr"+purr) var name=myCat.get_name();alert(" name"+name)
查看完整描述

1 回答

已采納
?
cwtxz

TA貢獻5條經驗 獲得超0個贊

你沒有真正理解js繼承。js里面的函數是怎么來的?其實是通過Function構造器產生的,當我們創(chuàng)建函數對象時,該對象會產生一段類似于這樣的代碼:this.prototype={constructor:this}。method使我們人為定義的方法,該方法是一個輔助函數,代碼如下:

????????Function.prototype.method=function(name,func){

????????????this.prototype[name]=func;

????????????return this;????

????????}

定義了該輔助函數之后,意味著所有的函數對象都可以調用method方法,而Funtion對象本身也是一個函數對象,因而也可以調用method方法。

查看完整回答
反對 回復 2015-06-16
  • 1 回答
  • 0 關注
  • 1551 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號