建立多個物件的方案
阿新 • • 發佈:2022-03-18
1:new Object()和字面量方式 此處就不在舉例,使用這兩個方式會創造大量重複的程式碼
2:工廠模式 舉例說明
1 function Createperson(name, age, address) { 2 var p = new Object() 3 p.name = name 4 p.age = age 5 p.address = address 6 p.eating = function() { 7 console.log(this.name + '在吃飯'); 8 } 9 return p10 } 11 var p1 = Createperson('張三', 12, '廣州') 12 var p2 = Createperson('李四', 18, '深圳') 13 var p3 = Createperson('王五', 24, '上海') 14 console.log(p1); 15 console.log(p2); 16 console.log(p3);
使用工廠模式減小了程式碼重複量,但是有個缺點,可以看到打印出來的物件沒有型別,所以使用工廠模式獲取不到物件最真實的型別
3:建構函式(constructor---構造器) 通過new的方式
1 function Person(name, age, address) {2 this.name = name 3 this.age = age 4 this.address = address 5 this.eating = function() { 6 console.log(this.name + '在吃飯'); 7 } 8 } 9 var p1 = new Person('張三', 12, '廣州') 10 var p2 = new Person('李四', 18, '深圳') 11 var p3 = new Person('王五', 24, '上海') 12 console.log(p1);13 console.log(p2); 14 console.log(p3);
構造模式 把物件型別也打印出來了
注意:建構函式的首字母一般要大寫,建構函式的大概過程就是 new 了一個{} 再this={} 然後把程式碼體放進去 最後會自動 return this 所以建構函式不用return