工厂模式、构造函数入门
//工廠模式:把一個函數封裝好 等待實例化
//好處:不用重復寫代碼
function Hanshu(a,b,c){
var f=new Object(); //創建一個對象
f.name=a
f.age=b
f.job=c
f.fangfa=function(){
alert(this.age)
}
return f
}
var a=Hanshu("小明",18,"學生")
var b=Hanshu("小紅",28,"技術")
console.log(a.name)
console.log(b.name)
總結:簡單的使用工廠模式,使用簡單的函數創建對象,為對象添加屬性和方法,然后返回對象,最后這個模式被構造函數取代
//構造函數
//構造函數首寫字母要大寫
function Hanshu(a,b,c){
this.name=a;
this.age=b;
this.job=c;
this.fangfa=function(){
return this.name
}
}
//要創建Hanshu的實例要用 new操作符
var a=new Hanshu("小明","18","學生")
var b=new Hanshu("小紅","28","技術")
console.log(a.name) //"小明"
console.log(b.name) //”小紅
//總結:
// 好處 1.構造函數與函數最大的區別在于 它可以來創建對象。
// 2.跟工廠函數比它自己不用一直創建對象,而是通過new來創建實例對象,而且沒有return。
// 壞處 1.構造函數中的方法總是重復創建(我們可以通過給構造函數內部一個指針,指向函數聲明就可以),請看下面的理解
// function Hanshu(a,b,c){
// this.name=a;
// this.age=b;
// this.job=c;
// this.fangfa=quanju
// }
// }
// function quanju(){
// alert(this.name)
// }
//這種方法也不推薦使用 雖然解決了重復創建的問題,但是當方法多的時候都創建在全局環境中就沒有意義了,推薦使用原型模式
轉載于:https://www.cnblogs.com/kazy/p/8610759.html
總結
以上是生活随笔為你收集整理的工厂模式、构造函数入门的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 比特币现金被3.1万多家餐厅接受
- 下一篇: Cookie,Session的区别