使用建構函數建構物件

"建構函數"(caonstructor Function),能夠定義物件屬性和方法,可以將它視為一個物件宣告(但他並非類別)如下所示:

function NameCard(name,age,phone,email){
    this.name=name;
    this.age=age;
    this.phone=phone;
    this.email=email;
}

上敘建構函數NameCard()參數值可建立屬性值name、age、phone、email,this關鍵字指的是建立的物件本身。
在宣告後就可以用new運算建立物件,如下所示:

var objMyCard=new NameCard("王力宏",30,"02-555555555","leeyahoo.com.tw");

var objCard=new NameCard();
objCard.name="張惠妹";
objCard.age=40;
objCard.phone="02-888888888";
objCard.email="megmail.com";

NameCard()傳入的參數是物件的屬性值,objCard則是建立後再指定屬性值。

物件方法

新增物件方法來顯示物件屬性值,如下新增this.print=printCard;,print是一個方法,直printCard就是指向參考的printCard()函數。

function NameCard(name,age,phone,email){
    this.name=name;
    this.age=age;
    this.phone=phone;
    this.email=email;
    this.print=printCard;
}

printCard()函數,物件方法,在函數中使用this關鍵字取得物件的屬性值。

function printCard(){
    document.write("姓名:"+this.name+"<br/>");
    document.write("年齡:"+this.age+"<br/>");
    document.write("電話:"+this.phone+"<br/>");
    document.write("郵件:"+this.email+"<br/>");
};

程式預覽

參考來源:跨平台Android iPhone程式開發使用PhoneGap、jQuery Mobile 陳會安 著

您也可能喜歡這些文章

Javascript邏輯運算子

邏輯運算子 邏輯運算子 通常被用於布林(邏輯)值; 使用於 布林(邏輯)值時, 它們會回傳布林型態的值。 然而,&& 和...