除了使用上述 JavaScript 內建的物件,我們也可以建立自己的物件。要建立自訂物件,有以下三種方法,從中我們也可以發現 JavaScript 的原型基礎物件導向 (Prototype-based Object-orientation) 與 C++ 或 Java 有顯著的差異:
| 直接建立物件 | var objCard = {
name : "Tom",
age : "17",
phone : "58585888",
email : "tom@gmail.com"
}; |
| 用 Object() 建構函式建立物件 | var objCard = new Object(); objCard.name = "Tom"; objCard.age = "17"; objCard.phone = "58585888"; objCard.email = "tom@gmail.com"; |
| 自行撰寫建構函式建立物件,方便重複使用該結構 | function nameCard(_name, _age, _phone, _email) {
this.name = _name;
this.age = _age;
this.phone = _phone;
this.email = _email;
}
var objCardA = new nameCard("Tom", "17",
"58585888", "tom@gmail.com");
var objCardB = new nameCard();
objCardB.name = "Tom";
objCardB.age = "17";
objCardB.phone = "58585888";
objCardB.email = "tom@gmail.com"; |
剛剛我們都只有建立物件的屬性,當然,我們也可以建立物件的方法,只要設定該方法對應到的函式即可:
function nameCard(_name, _age, _phone, _email) {
this.name = _name;
this.age = _age;
this.phone = _phone;
this.email = _email;
this.print = printCard;
}
function printCard() {
document.write("姓名:" + this.name + "<br>");
document.write("年齡:" + this.age + "<br>");
document.write("電話:" + this.phone + "<br>");
document.write("郵件:" + this.email + "<br>");
}
var objCard = new nameCard();
objCard.name = "Tom";
objCard.age = "17";
objCard.phone = "58585888";
objCard.email = "tom@gmail.com";
objCard.print();
學到這裡,相信您對 JavaScript 應該已經有一些認識了。接下來,如果您對網頁前端開發有興趣,建議您去學 jQuery,它是個開放源始碼 (Open-source)、功能強大的 JavaScript 函式庫 (Library),可以讓您輕易地建立出豐富多樣的網頁。另外,還有一些很強大的開放源始碼網頁框架 (Framework),例如 Bootstrap 或 Semantic UI,也非常值得學習。但是請記得,要靈活應用這些現成的框架,融入自己的設計風格,而不是濫用喔!