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