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

首頁 > 語言 > JavaScript > 正文

JScript中的prototype(原型)屬性研究第1/2頁

2024-05-06 14:10:35
字體:
來源:轉載
供稿:網友
我們使用prototype屬性提供對象的類的一組基本功能。并且對象的新實例會"繼承"賦予該對象原型的操作。但是這個prototype到底是怎么實現(xiàn)和被管理的呢?

對于對象的prototype屬性的說明,JScript手冊上如是說:所有 JScript 內部對象都有只讀的 prototype 屬性。可以向其原型中動態(tài)添加功能(屬性和方法),但該對象不能被賦予不同的原型。然而,用戶定義的對象可以被賦給新的原型。
下面我們看三個經典的prototype屬性的使用示例。
1、為腳本環(huán)境內建對象添加方法:
代碼如下:
Array.prototype.max = function()
{
var i, max = this[0];
for (i = 1; i < this.length; i++)
{
if (max < this[i])
max = this[i];
}
return max;
};

2、為用戶自定義類添加方法:
代碼如下:
function TestObject(name)
{
this.m_Name = name;
}
TestObject.prototype.ShowName = function()
{
alert(this.m_Name);
};

3、更新自定義類的prototype:
代碼如下:
function TestObjectA()
{
this.MethodA = function()
{
alert('TestObjectA.MethodA()');
}
}
function TestObjectB()
{
this.MethodB = function()
{
alert('TestObjectB.MethodB()');
}
}
TestObjectB.prototype = new TestObjectA();

第三個很眼熟吧?對啊,它就是我們前面介紹的原型繼承法呀~~ 不過今天我們不是研究"繼承",之所以可以這樣來實現(xiàn)一種繼承,只是利用了prototype屬性的一個副作用而已。
prototype還有一個默認的屬性:constructor,是用來表示創(chuàng)建對象的函數的(即我們OOP里說的構造函數)。constructor屬性是所有具有prototype屬性的對象的成員。它們包括除Global和Math對象以外的所有JScript內部對象。constructor屬性保存了對構造特定對象實例的函數的引用。
弄清楚了JScript中prototype屬性怎么使用后,下面我們再來深入的研究它。
12下一頁閱讀全文
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 黄大仙区| 辽中县| 安义县| 牡丹江市| 太仓市| 丰台区| 盐津县| 安平县| 岳阳市| 洛川县| 乌拉特后旗| 宜丰县| 卫辉市| 林周县| 城步| 专栏| 洪湖市| 富阳市| 民丰县| 怀远县| 启东市| 南岸区| 芜湖县| 连江县| 洱源县| 宜黄县| 漳州市| 舒城县| 察哈| 天镇县| 岱山县| 临江市| 苍溪县| 菏泽市| 浪卡子县| 松原市| 义马市| 曲周县| 泰兴市| 渝中区| 巍山|