JavaScript創建高級對象具體步驟
你對JavaScript創建高級對象的方法是否了解,這里通過實例向大家描述一下,相信本文介紹一定會讓你有所收獲。
JavaScript創建高級對象
1)使用構造函數創建對象的實例
在JAVASCRIPT中構造函數和其它面向對象的語言一樣,不可以直接調用,在用new關鍵字創建一個對象時自動的調用.
以下是JAVASCRIPT中使用構造函數的新示例。
- varmyObject=newObject();//創建沒有屬性的通用對象。
- varmyBirthday=newDate(1961,5,10);//創建一個Date對象。
- varmyCar=newCar();//創建一個用戶定義的對象,并初始化其屬性。
編寫構造函數
可以使用new運算符結合像Object()、Date()和Function()這樣的預定義的構造函數來創建對象并對其初始化。
面向對象的編程其強有力的特征是定義自定義構造函數以創建腳本中使用的自定義對象的能力。
創建了自定義的構造函數,這樣就可以創建具有已定義屬性的對象。
下面是自定義函數的示例(注意this關鍵字的使用)。
- functionCircle(xPoint,yPoint,radius){
- this.x=xPoint;//圓心的x坐標。
- this.y=yPoint;//圓心的y坐標。
- this.r=radius;//圓的半徑。
- }
調用Circle構造函數時,給出圓心點的值和圓的半徑(所有這些元素是完全定義一個獨特的圓對象所必需的)。
結束時Circle對象包含三個屬性。下面是如何例示Circle對象。
varaCircle=newCircle(5,11,99);
2)使用原型來創建對象
在JAVASCRIPT中可以采用prototype關鍵字來為對象創新成員函數和屬性,可以在一個對象中更改原型屬性的值,新的值將覆蓋默認值,但僅在該實例中有效。屬于這個類的其他對象不受此更改的影響。
下面給出了使用自定義構造函數的示例,Circle(注意this關鍵字的使用)。
- Circle.prototype.pi=Math.PI;
- functionACirclesArea(){
- returnthis.pi*this.r*this.r;//計算圓面積的公式為?r2。
- }
- Circle.prototype.area=ACirclesArea;
- //計算圓面積的函數現在是CirclePrototype對象的一個方法。
- vara=ACircle.area();//此為如何在Circle對象上調用面積函數。
下面的示例是String對象中采用原型來定義的一個實例方法.
- //增加一個名為trim的函數作為
- //String構造函數的原型對象的一個方法。
- String.prototype.trim=function()
- {
- //用正則表達式將前后空格
- //用空字符串替代。
- returnthis.replace(/(^s*) (s*$)/g,"");
- }
- //有空格的字符串
- vars="leadingandtrailingspaces";
- //顯示"leadingandtrailingspaces(35)"
- window.alert(s+"("+s.length+")");
- //刪除前后空格
- ss=s.trim();
- //顯示"leadingandtrailingspaces(27)"
- window.alert(s+"("+s.length+")");
3)定義類的靜態成員
在JAVASCRIPT中定義類的靜態成員可以直接如此定義
例如我如果要在類中定義一個靜態方法以便返回類的實例.
可以先定一個createNew將一個方法對象附給它:
SplitterBar.createNew=_createnew;
以下是方法的實例:
- function_cretaenew()
- {
- varbar=newSplitterBar();
- returnbar;
- }
【編輯推薦】
- 詳細說明Javascript匿名函數技巧與文章
- JavaScript函數的定義及形式參數
- C#代碼與JavaScript函數的相互調用
- JavaScript函數中arguments對象
- Javascript中CSS屬性float特殊寫法