中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

javascript中定義類的方法詳解
來源:易賢網(wǎng) 閱讀:1061 次 日期:2015-02-12 11:36:45
溫馨提示:易賢網(wǎng)小編為您整理了“javascript中定義類的方法詳解”,方便廣大網(wǎng)友查閱!

這篇文章主要詳細(xì)介紹了javascript中定義類的方法的相關(guān)資料,需要的朋友可以參考下

JS中定義類的方式有很多種:

1、工廠方式

代碼如下:

function Car(){

var ocar = new Object;

ocar.color = "blue";

ocar.doors = 4;

ocar.showColor = function(){

document.write(this.color)

};

return ocar;

}

var car1 = Car();

var car2 = Car();

調(diào)用此函數(shù)時(shí)將創(chuàng)建新對(duì)象,并賦予它所有的屬性和方法。使用此函數(shù)可以創(chuàng)建2個(gè)屬性完全相同的對(duì)象。當(dāng)然我妹可以通過給它傳遞參數(shù)來改版這種方式。

代碼如下:

function Car(color,door){

var ocar = new Object;

ocar.color = color;

ocar.doors = door;

ocar.showColor = function(){

document.write(this.color)

};

return ocar;

}

var car1 = Car("red",4);

var car2 = Car("blue",4);

car1.showColor() //output:"red"

car2.showColor() //output:"blue"

現(xiàn)在可以通過給函數(shù)傳遞不同的參數(shù)來得到具有不同值的對(duì)象。

在前面的例子中,每次調(diào)用函數(shù)Car(),都要?jiǎng)?chuàng)建showcolor(),意味著每個(gè)對(duì)象都有一個(gè)自己的showcolor()方法。

但是事實(shí)上,每個(gè)對(duì)象斗共享了同一個(gè)函數(shù)。

雖然可以在函數(shù)外定義方法,然后通過將函數(shù)的屬性指向該方法。

代碼如下:

function showColor(){

alert(this.color);

}

function Car(){

var ocar = new Object();

ocar.color = color;

ocar.doors = door;

ocar.showColor = showColor;

return ocar;

}

但是這樣看起來不像是函數(shù)的方法。

2、構(gòu)造函數(shù)方式

構(gòu)造函數(shù)方式同工廠方式一樣簡(jiǎn)單,如下所示:

代碼如下:

function Car(color,door){

this.color = color;

this.doors = door;

this.showColor = function(){

alert(this.color)

};

}

var car1 = new Car("red",4);

var car2 = new Car("blue",4);

可以看到構(gòu)造函數(shù)方式在函數(shù)內(nèi)部沒有創(chuàng)建對(duì)象,是用this關(guān)鍵字。因?yàn)樵谡{(diào)用構(gòu)造函數(shù)時(shí)已經(jīng)創(chuàng)建了對(duì)象,而在函數(shù)內(nèi)部只能用this來訪問對(duì)象屬性。

現(xiàn)在用new來創(chuàng)建對(duì)象,看起來像那么回事了!但是它同工廠方式一樣。每次調(diào)用都會(huì)為對(duì)象創(chuàng)建自己的方法。

3、原型方式

該方式利用了對(duì)象的prototype屬性。首先用空函數(shù)創(chuàng)建類名,然后所有的屬性和方法都被賦予prototype屬性。

代碼如下:

function Car(){

}

Car.prototype.color = "red";

Car.prototype.doors = 4;

Car.prototype.showColor = function(){

alert(this.color);

}

var car1 = new Car();

var car2 = new Car();

在這段代碼中,首先定義了一個(gè)空函數(shù),然后通過prototype屬性來定義對(duì)象的屬性。調(diào)用該函數(shù)時(shí),原型的所有屬性都會(huì)立即賦予要?jiǎng)?chuàng)建的對(duì)象,所有該函數(shù)的對(duì)象存放的都是指向showColor()的指針,語法上看起來都屬于同一個(gè)對(duì)象。

但是這個(gè)函數(shù)沒有參數(shù),不能通過傳遞參數(shù)來初始化屬性,必須要在對(duì)象創(chuàng)建后才能改變屬性的默認(rèn)值。

原型方式有個(gè)很嚴(yán)重的問題就是當(dāng)屬性指向的是對(duì)象時(shí),如數(shù)組。

代碼如下:

function Car(){

}

Car.prototype.color = "red";

Car.prototype.doors = 4;

Car.prototype.arr = new Array("a","b");

Car.prototype.showColor = function(){

alert(this.color);

}

var car1 = new Car();

var car2 = new Car();

car1.arr.push("cc");

alert(car1.arr); //output:aa,bb,cc

alert(car2.arr); //output:aa,bb,cc

這里由于數(shù)組的引用值,Car的兩個(gè)對(duì)象指向的都是同一個(gè)數(shù)組,所以當(dāng)在car1添加值后,在car2中也可以看到。

聯(lián)合是用構(gòu)造函數(shù)/原型方式就可以像其他程序設(shè)計(jì)語言一樣創(chuàng)建對(duì)象,是用構(gòu)造函數(shù)定義對(duì)象的非函數(shù)屬性,用原型方式定義對(duì)象的方法。

代碼如下:

function Car(color,door){

this.color = color;

this.doors = door;

this.arr = new Array("aa","bb");

}

Car.prototype.showColor(){

alert(this.color);

}

var car1 = new Car("red",4);

var car2 = new Car("blue",4);

car1.arr.push("cc");

alert(car1.arr); //output:aa,bb,cc

alert(car2.arr); //output:aa,bb

5、動(dòng)態(tài)原型方式

動(dòng)態(tài)原型的方式同混合的構(gòu)造函數(shù)/原型方式原理相似。唯一的區(qū)別就是賦予對(duì)象方法的位置。

代碼如下:

function Car(color,door){

this.color = color;

this.doors = door;

this.arr = new Array("aa","bb");

if(typeof Car._initialized == "undefined"){

Car.prototype.showColor = function(){

alert(this.color);

};

Car._initialized = true;

}

}

動(dòng)態(tài)原型方式是使用一個(gè)標(biāo)志來判斷是否已經(jīng)給原型賦予了方法。這樣可以保證該方法只創(chuàng)建一次

6、混合工廠方式

它的目的師創(chuàng)建假構(gòu)造函數(shù),只返回另一種對(duì)象的新實(shí)例。

代碼如下:

function Car(){

var ocar = new Object();

ocar.color = "red";

ocar.doors = 4;

ocar.showColor = function(){

alert(this.color)

};

return ocar;

}

與工廠方式所不同的是,這種方式使用new運(yùn)算符。

以上就是全部的創(chuàng)建對(duì)象方法。目前使用最廣泛的就是混合構(gòu)造函數(shù)/原型方式,此外,動(dòng)態(tài)原型方式也很流行。在功能上與構(gòu)造函數(shù)/原型方式等價(jià)。

以上就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。

更多信息請(qǐng)查看IT技術(shù)專欄

更多信息請(qǐng)查看腳本欄目
易賢網(wǎng)手機(jī)網(wǎng)站地址:javascript中定義類的方法詳解
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢 | 簡(jiǎn)要咨詢須知 | 新媒體/短視頻平臺(tái) | 手機(jī)站點(diǎn)

版權(quán)所有:易賢網(wǎng)

中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
国产一区二区久久| 欧美视频在线观看一区| 在线视频综合导航| 精品卡一卡二卡三卡四在线| 国产精品日日摸夜夜摸av| 亚洲国产成人porn| jlzzjlzz欧美大全| 精品国产免费人成电影在线观看四季| 国产午夜精品理论片a级大结局 | 成人va在线观看| 91精品国产综合久久蜜臀| 亚洲人成网站色在线观看| 国产精品影视网| 日韩欧美色综合| 亚洲成人免费电影| 色拍拍在线精品视频8848| 国产日韩欧美高清| 国产一区啦啦啦在线观看| 91.com视频| 日韩av不卡在线观看| 欧美日韩一区二区在线观看 | 波多野洁衣一区| 久久精品日韩一区二区三区| 蜜臀久久99精品久久久画质超高清 | 日韩一区二区三区视频在线| 亚洲一区二区不卡免费| 91污在线观看| 国产精品电影一区二区三区| 国产v综合v亚洲欧| 国产午夜精品一区二区三区嫩草 | 日韩精品国产精品| 欧美丝袜自拍制服另类| 亚洲一区在线观看网站| 91久久国产综合久久| 亚洲精品水蜜桃| 欧亚一区二区三区| 亚洲成人中文在线| 777精品伊人久久久久大香线蕉| 亚洲一二三区在线观看| 欧美日韩mp4| 久久疯狂做爰流白浆xx| 26uuu精品一区二区在线观看| 麻豆免费看一区二区三区| 亚洲精品一区二区三区四区高清| 久久国产人妖系列| 国产色一区二区| 99re66热这里只有精品3直播| 日本一区二区三区电影| 丁香激情综合国产| 一区二区三区高清不卡| 欧美日韩国产首页| 久久精品久久综合| 国产精品免费视频一区| 色先锋久久av资源部| 日韩高清一级片| 久久久国产精品午夜一区ai换脸| 成人av影院在线| 亚洲电影你懂得| 欧美大度的电影原声| 成人深夜福利app| 亚洲国产aⅴ天堂久久| 2023国产精品| 在线欧美日韩精品| 久久精品99国产精品| 国产精品私房写真福利视频| 欧美在线一区二区三区| 久久国产精品99久久久久久老狼| 国产精品久久久久久久久免费相片 | 日韩一卡二卡三卡四卡| 国产成人三级在线观看| 一区二区高清免费观看影视大全| 欧美电影免费提供在线观看| 99re视频精品| 国内久久婷婷综合| 亚洲视频中文字幕| 日韩一区二区电影| 日本高清无吗v一区| 狠狠狠色丁香婷婷综合激情| 一区二区三区不卡在线观看| 国产亚洲欧洲997久久综合| 欧美日韩国产成人在线免费| 成人国产电影网| 日本成人在线电影网| 亚洲欧美自拍偷拍色图| 日韩精品在线看片z| 欧洲一区在线电影| 国产91精品一区二区麻豆网站| 亚洲一区精品在线| 国产精品国产精品国产专区不片 | 欧美一级黄色片| 一区二区三区在线观看动漫| 国产一区二区三区免费看 | 欧美三区在线观看| 免费观看91视频大全| 国产精品天天看| 91精品国产综合久久小美女| 色婷婷久久久久swag精品| 国产精品资源站在线| 一本色道久久综合精品竹菊| 久久国内精品视频| 午夜久久久久久久久久一区二区| 国产精品久久久久久久久果冻传媒| 精品久久久久香蕉网| 日韩欧美国产wwwww| 日本国产一区二区| 欧美成人精品1314www| 黑人巨大精品欧美黑白配亚洲| 亚洲午夜国产一区99re久久| 亚洲欧美激情小说另类| 国产精品久久久爽爽爽麻豆色哟哟 | 国产精品天干天干在观线| 久久日韩粉嫩一区二区三区| 精品免费视频.| 欧美va亚洲va国产综合| 欧美xfplay| 日韩区在线观看| 亚洲精品在线免费播放| 久久亚洲欧美国产精品乐播| 精品国产91乱码一区二区三区| 日韩视频一区二区三区在线播放| 555www色欧美视频| 日韩视频免费观看高清完整版在线观看| 欧美日韩精品一区视频| 欧美一区二区三区爱爱| 欧美亚洲国产一区二区三区| 欧美在线综合视频| 亚洲香蕉伊在人在线观| 精品久久免费看| 精品国产三级电影在线观看| 日韩一级二级三级精品视频| 日韩一区二区在线观看| 久久综合色8888| 久久久久国产精品免费免费搜索| 久久久精品综合| 亚洲欧洲性图库| 日本亚洲最大的色成网站www| 人人狠狠综合久久亚洲| 国产一区二区三区日韩| www.亚洲在线| 欧美日韩国产一级片| 日韩精品一区二区三区视频播放 | 精品一区二区在线免费观看| 国产老女人精品毛片久久| 成人性生交大片免费看中文| 色婷婷久久综合| 麻豆成人在线观看| av电影天堂一区二区在线| 国产欧美精品一区二区色综合 | 麻豆一区二区99久久久久| 经典三级在线一区| 成人h动漫精品一区二| 欧美性色黄大片| 久久久久久久av麻豆果冻| 一区二区三区91| 国产真实乱偷精品视频免| 日本高清不卡视频| 精品欧美一区二区久久| 一区二区在线免费观看| 久久er99热精品一区二区| 粗大黑人巨茎大战欧美成人| 这里是久久伊人| 亚洲视频一区二区免费在线观看| 首页国产欧美日韩丝袜| av欧美精品.com| 日韩欧美亚洲另类制服综合在线| 中文字幕亚洲电影| 麻豆高清免费国产一区| 欧美在线视频不卡| 国产精品区一区二区三区| 国产一区高清在线| 精品一区二区久久久| 免费高清在线一区| 91首页免费视频| 精品国产123| 五月天一区二区三区| av在线不卡观看免费观看| 精品女同一区二区| 午夜视频在线观看一区二区| www.欧美亚洲| 亚洲精品一区二区三区福利| 亚洲成va人在线观看| 91碰在线视频| 国产欧美日韩不卡| 久久精品国产99国产精品| 宅男噜噜噜66一区二区66| 亚洲精品国久久99热| 99热99精品| 国产精品午夜免费| 国产一区在线视频| 精品久久久网站| 激情五月婷婷综合| 日韩欧美一二三| 麻豆精品精品国产自在97香蕉| 欧美日韩国产一级二级| 亚洲国产成人精品视频| 欧美中文字幕亚洲一区二区va在线| 亚洲图片激情小说| 99re热视频精品| 亚洲精选在线视频| 在线观看欧美黄色|