javascript面向對象創(chuàng)建對象的方式小結
本文實例講述了javascript面向對象創(chuàng)建對象的方式。分享給大家供大家參考,具體如下:
方式一:通過內置Object對象的方式創(chuàng)建 然后通過點語法,動態(tài)給對象創(chuàng)建屬性,方法
var o1 = new Object();
o1.name = 'Tom';
o1.sing = function() {
console.log('I am singing');
}
方式二:通過字面量json形式創(chuàng)建對象
var o2 = {
"name":"jackson",
"age":"10",
"say":function(){
console.log("say hi");
};
};
方式三:通過構造函數(shù)創(chuàng)建
var o3 = function() {
this.name = "Lucy",
this.age = "10",
this.say = function() {
console.log("say hello");
}
}
方式四:通過原型創(chuàng)建
var o4 = function() {}
o4.prototype = {
"name":"Taylor",
"age":10,
"say":function(){
console.log("say h1");
}
}
方式五:通過原型和構造函數(shù)混合的形式創(chuàng)建(推薦使用這種,原因:盡量將方法定義為原型方法,原型方法避免了每次調用構造函數(shù)時對屬性或方法的構造,節(jié)省空間,創(chuàng)建對象快)
var o5 = function() {
this.name = 'James';
this.age = 10;
}
o5.prototype = {
"say":function() {
console.log("say hi");
}
}
方式六:拷貝模式創(chuàng)建對象
// 先要有一個拷貝模塊
function extend(target,source){
for(var k in source){
target[k] = source[k];
}
return target;
};
var o6 = {
"name":"o6",
"age":10
}
var o7 = {
"say":function() {
console.log('say hi');
}
}
// o6拷貝o7的方法,然后構建成一個新的對象
var o8 = extend(o6,o7);
o8.say(); // say hi
方式七:通過第三方庫來創(chuàng)建對象
有 base2.js 和 simplejavascriptinheritance.js 來實現(xiàn), 網(wǎng)上有資料。
感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼運行效果。
更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《javascript面向對象入門教程》、《JavaScript錯誤與調試技巧總結》、《JavaScript數(shù)據(jù)結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數(shù)學運算用法總結》
希望本文所述對大家JavaScript程序設計有所幫助。
- js 創(chuàng)建對象的多種方式與優(yōu)缺點小結
- 詳解js創(chuàng)建對象的幾種方式和對象方法
- JS中的函數(shù)與對象的創(chuàng)建方式
- JavaScript創(chuàng)建對象方式總結【工廠模式、構造函數(shù)模式、原型模式等】
- JavaScript創(chuàng)建對象的常用方式總結
- JavaScript實現(xiàn)創(chuàng)建自定義對象的常用方式總結
- JavaScript創(chuàng)建對象的七種方式全面總結
- 基于JS對象創(chuàng)建常用方式及原理分析
- JavaScript創(chuàng)建對象的七種方式(推薦)
- JS創(chuàng)建對象的四種方式
相關文章
動態(tài)加載dtree.js樹treeview(示例代碼)
本篇文章主要是對動態(tài)加載dtree.js樹treeview的示例代碼進行了詳細的分析介紹,需要的朋友可以過來參考下,希望對大家有所幫助2013-12-12
Javascript自執(zhí)行匿名函數(shù)(function() { })()的原理淺析
匿名函數(shù)就是沒有函數(shù)名的函數(shù)。這篇文章主要介紹了Javascript自執(zhí)行匿名函數(shù)(function() { })()的原理淺析的相關資料,需要的朋友可以參考下2016-05-05
javascript 操作Word和Excel的實現(xiàn)代碼
javascript 操作Word和Excel的實現(xiàn)代碼, 需要的朋友可以參考下。2009-10-10
js 剪切板的用法(clipboardData.setData)與js match函數(shù)介紹
這篇文章主要是對js中剪切板的使用方法(clipboardData.setData)與js中的match函數(shù)進行了介紹。需要的朋友可以過來參考下,希望對大家有所幫助2013-11-11

