欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript原型對(duì)象原理與應(yīng)用分析

 更新時(shí)間:2018年12月27日 11:23:41   作者:菜鳥學(xué)編程$  
這篇文章主要介紹了JavaScript原型對(duì)象原理與應(yīng)用,結(jié)合實(shí)例形式分析了javascript原型對(duì)象的概念、原理、使用方法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下

本文實(shí)例講述了JavaScript原型對(duì)象原理與應(yīng)用。分享給大家供大家參考,具體如下:

原型對(duì)象:

每個(gè)對(duì)象都有一個(gè)參考對(duì)象,這個(gè)參考對(duì)象稱之為原型對(duì)象。原型對(duì)象有自己的屬性和方法。當(dāng)A是B的原型對(duì)象時(shí),那么B擁有A中的所有屬性和方法。

原型對(duì)象的工作原理:

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

原型對(duì)象的引用:

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

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

這里使用在線HTML/CSS/JavaScript代碼運(yùn)行工具http://tools.jb51.net/code/HtmlJsRun測(cè)試上述代碼,可得如下運(yùn)行結(jié)果:

原型對(duì)象的繼承

繼承是通過(guò)原型對(duì)象實(shí)現(xiàn)

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

這里使用在線HTML/CSS/JavaScript代碼運(yùn)行工具http://tools.jb51.net/code/HtmlJsRun測(cè)試上述代碼,可得如下運(yùn)行結(jié)果:

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

更多關(guān)于JavaScript相關(guān)內(nèi)容還可查看本站專題:《javascript面向?qū)ο笕腴T教程》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)

希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • es6中使用map簡(jiǎn)化復(fù)雜條件判斷操作實(shí)例詳解

    es6中使用map簡(jiǎn)化復(fù)雜條件判斷操作實(shí)例詳解

    這篇文章主要介紹了es6中使用map簡(jiǎn)化復(fù)雜條件判斷操作,結(jié)合實(shí)例形式詳細(xì)分析了傳統(tǒng)方法與map簡(jiǎn)化復(fù)雜條件判斷的相關(guān)操作技巧,需要的朋友可以參考下
    2020-02-02
  • 使用JavaScript的ActiveXObject對(duì)象檢測(cè)應(yīng)用程序是否安裝的方法

    使用JavaScript的ActiveXObject對(duì)象檢測(cè)應(yīng)用程序是否安裝的方法

    這篇文章主要介紹了使用JavaScript的ActiveXObject對(duì)象檢測(cè)應(yīng)用程序是否安裝的方法,需要的朋友可以參考下
    2014-04-04
  • JavaScript時(shí)間戳與時(shí)間日期間相互轉(zhuǎn)換

    JavaScript時(shí)間戳與時(shí)間日期間相互轉(zhuǎn)換

    今天做項(xiàng)目遇到這樣的問(wèn)題,要將獲取到的時(shí)間轉(zhuǎn)換為時(shí)間戳,通過(guò)查閱相關(guān)資料,問(wèn)題順利解決,下面小編把具體實(shí)現(xiàn)代碼分享到腳本之家平臺(tái),需要的朋友參考下
    2017-12-12
  • 開啟BootStrap學(xué)習(xí)之旅

    開啟BootStrap學(xué)習(xí)之旅

    當(dāng)下最流行的前端開發(fā)框架Bootstrap,可大大簡(jiǎn)化網(wǎng)站開發(fā)過(guò)程,從而深受廣大開發(fā)者的喜歡,你如果也喜歡Bootstrap前端開發(fā)框架,不要錯(cuò)過(guò)這次旅行
    2016-05-05
  • javascript下漢字和Unicode編碼互轉(zhuǎn)代碼

    javascript下漢字和Unicode編碼互轉(zhuǎn)代碼

    這個(gè)是就是把漢字和Unicode編碼互轉(zhuǎn)的javascript代碼,也是從網(wǎng)上找到了,也許有人用得著??!
    2010-10-10
  • Javascript圖片上傳前的本地預(yù)覽實(shí)例

    Javascript圖片上傳前的本地預(yù)覽實(shí)例

    圖片的上傳預(yù)覽功能主要用于圖片上傳前的一個(gè)效果的預(yù)覽,這篇文章主要介紹了Javascript圖片上傳前的本地預(yù)覽實(shí)例,需要的朋友可以參考下
    2014-06-06
  • js與applet相互調(diào)用的方法

    js與applet相互調(diào)用的方法

    這篇文章主要介紹了js與applet相互調(diào)用的方法,結(jié)合實(shí)例形式分析了js調(diào)用java的applet以及java調(diào)用js的實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2016-06-06
  • JavaScript中string對(duì)象

    JavaScript中string對(duì)象

    和JAVA中String對(duì)象用處一樣啊,javascript中的String對(duì)象也有自己的方法,和JAVA中的類似。
    2015-06-06
  • 在Web關(guān)閉頁(yè)面時(shí)發(fā)送Ajax請(qǐng)求的實(shí)現(xiàn)方法

    在Web關(guān)閉頁(yè)面時(shí)發(fā)送Ajax請(qǐng)求的實(shí)現(xiàn)方法

    這篇文章主要給大家介紹了關(guān)于如何在Web關(guān)閉頁(yè)面時(shí)發(fā)送Ajax請(qǐng)求的實(shí)現(xiàn)方法,文中通過(guò)示例代碼以及圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • 用js小類庫(kù)獲取瀏覽器的高度和寬度信息

    用js小類庫(kù)獲取瀏覽器的高度和寬度信息

    在做項(xiàng)目時(shí)碰到了要在頁(yè)面上顯示一個(gè)浮動(dòng)DIV層的效果。本來(lái)做的是在頁(yè)面居中時(shí)顯示的,但后來(lái)經(jīng)過(guò)自己的測(cè)試發(fā)現(xiàn),當(dāng)網(wǎng)頁(yè)中出現(xiàn)了滾動(dòng)條之后,那個(gè)浮動(dòng)的DIV卻還是在頁(yè)面的頂部顯示的
    2012-01-01

最新評(píng)論