国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > JavaScript > 正文

JavaScript原型

2019-11-11 06:00:35
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

每一個(gè)javaScript對(duì)象(null除外)都和另一個(gè)對(duì)象相關(guān)聯(lián)。“另一個(gè)對(duì)象”就是我們熟知的原型,每一個(gè)對(duì)象都從原型繼承屬性。

在ECMAScript5中,將對(duì)象作為參數(shù)傳入Object.getPRototypeOf()中可以查詢(xún)它的原型。

要檢測(cè)一個(gè)對(duì)象是不是另一個(gè)對(duì)象的原型,可以通過(guò)isPrototypeOf()方法。例如可以通過(guò)p.isPrototypeOf(o)檢測(cè)p是否是o的原型。

每一個(gè)函數(shù)都包含一個(gè)prototype屬性,指向函數(shù)的原型對(duì)象。當(dāng)將函數(shù)用作構(gòu)造函數(shù)的時(shí)候,新創(chuàng)建的對(duì)象會(huì)從原型對(duì)象上繼承屬性。例如:

//這是一個(gè)構(gòu)造函數(shù),用以初始化新創(chuàng)建的“范圍對(duì)象”function Range(from, to){	this.from = from;	this.to = to;}//所有的“范圍對(duì)象”都繼承自這個(gè)對(duì)象//注意屬性的名字是prototypeRange.prototype = {	//如果x在范圍內(nèi),則返回true;否則返回false	includes: function(x){		return this.from <= x && x <= this.to;	},		//對(duì)于范圍內(nèi)的每一個(gè)整數(shù)都調(diào)用一次f	foreach: function(f){		for(var x = Math.ceil(this.from); x <= this.to; x++) f(x);	},		//表示返回這個(gè)范圍的字符串	toString: function(){		return "(" + this.from + "..." + this.to + ")";	}};var r = new Range(1, 3);   //創(chuàng)建一個(gè)范圍對(duì)象r.includes(2);             //truer.foreach(console.log);    //輸出 1 2 3console.log(r.toString()); //輸出 (1...3)原型對(duì)象是類(lèi)的唯一標(biāo)識(shí):當(dāng)且僅當(dāng)兩個(gè)對(duì)象繼承自同一個(gè)原型對(duì)象時(shí),它們才是屬于同一個(gè)類(lèi)的實(shí)例。而初始化對(duì)象的狀態(tài)的構(gòu)造函數(shù)則不能作為類(lèi)的標(biāo)識(shí)。兩個(gè)構(gòu)造函數(shù)的prototype屬性可能指向同一個(gè)原型對(duì)象,那么這兩個(gè)構(gòu)造函數(shù)創(chuàng)建的實(shí)例是屬于同一個(gè)類(lèi)的。


發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 上林县| 聂拉木县| 永和县| 丹巴县| 和龙市| 若尔盖县| 新郑市| 涿州市| 房产| 鹰潭市| 宜州市| 赫章县| 普洱| 宁国市| 安达市| 福鼎市| 绥滨县| 蓬莱市| 开封市| 房山区| 湘潭县| 长白| 黄石市| 攀枝花市| 德州市| 合江县| 镇远县| 轮台县| 青岛市| 荣成市| 桦南县| 车险| 耿马| 万宁市| 静宁县| 邵阳县| 类乌齐县| 湖口县| 台前县| 陆良县| 昌都县|