本文實例講述了javascript面向對象創建對象的方式。分享給大家供大家參考,具體如下:
方式一:通過內置Object對象的方式創建 然后通過點語法,動態給對象創建屬性,方法
var o1 = new Object();o1.name = 'Tom';o1.sing = function() { console.log('I am singing');}
方式二:通過字面量json形式創建對象
var o2 = { "name":"jackson", "age":"10", "say":function(){ console.log("say hi"); };};
方式三:通過構造函數創建
var o3 = function() { this.name = "Lucy", this.age = "10", this.say = function() { console.log("say hello"); }}
方式四:通過原型創建
var o4 = function() {}o4.prototype = { "name":"Taylor", "age":10, "say":function(){ console.log("say h1"); }}
方式五:通過原型和構造函數混合的形式創建(推薦使用這種,原因:盡量將方法定義為原型方法,原型方法避免了每次調用構造函數時對屬性或方法的構造,節省空間,創建對象快)
var o5 = function() { this.name = 'James'; this.age = 10;}o5.prototype = { "say":function() { console.log("say hi"); }}
方式六:拷貝模式創建對象
// 先要有一個拷貝模塊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
方式七:通過第三方庫來創建對象
有 base2.js 和 simplejavascriptinheritance.js 來實現, 網上有資料。
希望本文所述對大家JavaScript程序設計有所幫助。
新聞熱點
疑難解答