面向?qū)ο蠡A(chǔ)
原創(chuàng)文章,轉(zhuǎn)載請(qǐng)注明來自JillYu博客-
http://write.blog.csdn.net/postlist
建議先下載對(duì)應(yīng)的代碼:
https://coding.net/u/Jill/p/dankal-jill/git
1、什么是面向?qū)ο缶幊蹋?1)
- 用對(duì)象的思想去寫代碼,就是面向?qū)ο缶幊?br>
- 過程式寫法
- 面向?qū)ο髮懛?/li> - 我們一直都在使用對(duì)象
-數(shù)組Array 時(shí)間Date
2、面向?qū)ο缶幊?OOP)的特點(diǎn)
- 抽象:抓住核心問題
- 封裝:只能通過對(duì)象來訪問方法
- 繼承:從已有對(duì)象上繼承出新的對(duì)象
- 多態(tài):多對(duì)象的不同形態(tài)
3、對(duì)象的組成(02)
- 方法(行為、操作)——函數(shù):過程、動(dòng)態(tài)的
- 屬性——變量:狀態(tài)、靜態(tài)的
4、創(chuàng)建第一個(gè)面向?qū)ο蟪绦颍?3)
- 為對(duì)象添加屬性和方法
-Object對(duì)象
-this指向
-創(chuàng)建兩個(gè)對(duì)象:重復(fù)代碼過多
5、工廠方式(04-07)
- 面向?qū)ο笾械姆庋b函數(shù)
- 改成與系統(tǒng)對(duì)象類似寫法
-首字母大寫
-new關(guān)鍵字提取
-this指向?yàn)樾聞?chuàng)建的對(duì)象 - 構(gòu)造函數(shù)
-用來創(chuàng)建對(duì)象的函數(shù),叫做構(gòu)造函數(shù)(new后面調(diào)用的函數(shù)) - 存在的問題
-對(duì)象的引用
-浪費(fèi)內(nèi)存
6、原型-prototype(07-08)
- 概念
-重寫對(duì)象方法,讓相同方法在內(nèi)存中存在一份(提高性能) - 學(xué)習(xí)原型
- 類比:css中的class - 通過原型改寫工廠方式
- 原則
a、相同的屬性和方法可以加載在原型上
b、混合的編程模式 - 總結(jié)面向?qū)ο髮懛?br> -構(gòu)造函數(shù)加屬性,原型加方法
<script>
function 構(gòu)造函數(shù)() {
對(duì)象.屬性
}
構(gòu)造函數(shù).原型.方法 = function(){};
//使用
var 對(duì)象1 = new 構(gòu)造函數(shù)();
對(duì)象1.方法();
</script>
栗子(09-12)
- 面向?qū)ο蟮倪x項(xiàng)卡
原則
-先寫出普通的寫法,然后改成面向?qū)ο髮懛?br> a、普通方法變型
b、盡量不要出現(xiàn)函數(shù)嵌套函數(shù)
c、 可以有全局變量
-改成面相對(duì)象
a、全局變量就是屬性
b、函數(shù)就是方法
c、onload中創(chuàng)建對(duì)象
d、改this指向問題 - 面向?qū)ο蟮耐献?br>
同上
注意event