面對對象語言的特性:
1. ?封裝。
2. ?繼承卿捎。
3. ?多態(tài)(父類引用指向子類實例)骡苞。
我對面對對象的理解:
1. ?類:某一類的靜態(tài)屬性;
2. 對象:某一類具體的某一個實例伟墙;
如何用JavaScript得到對象:
1: 通過new Object() 得到;
2: 使用Json 得到滴铅;
3: 使用工廠模式得到戳葵;(解決了對象無法重用的問題,但是無法判斷所得到的類型汉匙。)
4: 使用構造函數(shù)得到拱烁;(解決了無法判斷所得到類型的問題生蚁,但是形成了閉包函數(shù),造成不必要的內存占用)注:如果把構造函數(shù)中的方法函數(shù)邻梆,轉移到構造函數(shù)外守伸,會擴大方法函數(shù)的作用域绎秒,不利于開發(fā)浦妄!
5: 封裝!
封裝------JavaScript的原型(prototype)
1:
2:
3:
4:
注:原型中的值不會被覆蓋见芹,只是查找的順序問題剂娄。
原型重寫:
用Json數(shù)據(jù)代替對象.prototype.屬性名;