溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JavaScript原型對象原理與應用分析

發(fā)布時間:2020-08-19 22:24:39 來源:腳本之家 閱讀:156 作者:菜鳥學編程$ 欄目:web開發(fā)

本文實例講述了JavaScript原型對象原理與應用。分享給大家供大家參考,具體如下:

原型對象:

每個對象都有一個參考對象,這個參考對象稱之為原型對象。原型對象有自己的屬性和方法。當A是B的原型對象時,那么B擁有A中的所有屬性和方法。

原型對象的工作原理:

使用原型對象定義一個新的對象時,該對象不會立即擁有原型對象的屬性和方法,在調(diào)用的時候本對象內(nèi)部沒有的屬性和方法是才回去調(diào)用原型中的屬性和方法。(動態(tài)分配).

原型對象的引用:

在javascript中每一個函數(shù)都定義了一個prototype屬性用于引用原型對象。

function computer(){
   this.name="thinkPad 500";
   this.factory="聯(lián)想";
   this.price=5000;
   this.size=17;
}
/*
*讀取函數(shù)中的prototype,默認情況下為空
*/
for( pro in computer.prototype){
   document.write(computer.prototype,"<br>");
}
//沒有繼承原型對象中屬性
var mycomputer=new computer();
for( pro in mycomputer){
   document.write(pro,":",mycomputer[pro],"<br>");
}
computer.prototype.interface="VAG";
//添加原型對象的屬性
for( pro in computer.prototype){
   document.write(pro,":",computer.prototype[pro],"<br>");
}
//繼承原型對象中屬性
var mycomputer=new computer();
for( pro in mycomputer){
   document.write(pro,":",mycomputer[pro],"<br>");
}

這里使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼,可得如下運行結果:

JavaScript原型對象原理與應用分析

原型對象的繼承

繼承是通過原型對象實現(xiàn)

<script type="text/javascript">
//定義一個工人
function worker(){
    this.name="";
    this.address="";
}
//定義一個部門經(jīng)理
function manager(_dept){
    this.dept=_dept;
}
//定義繼承關系
manager.prototype=new worker();
//創(chuàng)建計劃部門經(jīng)理
var jh=new manager("計劃");
for(pro in jh){
    document.write(pro,":",jh[pro],"<br>");
}
//當前jh有效沒有改變原型對象中的值
jh.name="計劃部門經(jīng)理";
jh.address="計劃部";
for(pro in jh){
    document.write(pro,":",jh[pro],"<br>");
}
//原型對象中的值沒有被修改
var rs=new manager('人事');
for(pro in rs){
    document.write(pro,":",rs[pro],"<br>");
}
//修改原型對象中的值,將會在繼承的對象中體現(xiàn),如果繼承類中沒有覆蓋
manager.prototype.address="成都市";
//覆蓋后address的值還是原來的計劃
for(pro in jh){
    document.write(pro,":",jh[pro],"<br>");
}
//沒有覆蓋address的值是成都市
for(pro in rs){
    document.write(pro,":",rs[pro],"<br>");
}
</script>

這里使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼,可得如下運行結果:

JavaScript原型對象原理與應用分析

通過原型對象可以為所有繼承對象添加屬性和刪除屬性,所有繼承對象都將統(tǒng)一顯示。

更多關于JavaScript相關內(nèi)容還可查看本站專題:《javascript面向對象入門教程》、《JavaScript錯誤與調(diào)試技巧總結》、《JavaScript數(shù)據(jù)結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數(shù)學運算用法總結》

希望本文所述對大家JavaScript程序設計有所幫助。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI