1 回答

一只甜甜圈
TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超5個(gè)贊
構(gòu)造函數(shù)與工廠函數(shù)之間差異:
1.工廠函數(shù)需要?jiǎng)?chuàng)建對(duì)象,以及必須有返回值
2.工廠函數(shù)針對(duì)的都是Object的對(duì)象模型,而構(gòu)造函數(shù)可以匹配自定義的對(duì)象模型
即前者不論創(chuàng)建什么都只有一個(gè)xx instanceof Object
而后者根據(jù)自定義名而定類型,如上舉例所示
3.構(gòu)造函數(shù)弊端,如果在全局中定義相同的局部變量,容易造成全局污染,因?yàn)閠his.xx如果在局部獲取不到,就會(huì)去全局中獲取
4.構(gòu)造函數(shù)可以重寫,可以在全局中添加新屬性和方法Person.prototype = {},但工廠函數(shù)只能在局部添加
各自適用場(chǎng)合:
構(gòu)造函數(shù):適應(yīng)用于大型項(xiàng)目,屬性以及方法時(shí)常變換的項(xiàng)目
工廠函數(shù):適應(yīng)用于小型項(xiàng)目,或者正在制作過程還沒有成型的項(xiàng)目
添加回答
舉報(bào)
0/150
提交
取消