js6關于面向?qū)ο?doc

js6關于面向?qū)ο?doc

ID:55261350

大小:72.00 KB

頁數(shù):5頁

時間:2020-05-08

js6關于面向?qū)ο?doc_第1頁
js6關于面向?qū)ο?doc_第2頁
js6關于面向?qū)ο?doc_第3頁
js6關于面向?qū)ο?doc_第4頁
js6關于面向?qū)ο?doc_第5頁
資源描述:

《js6關于面向?qū)ο?doc》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在行業(yè)資料-天天文庫。

1、一、面向?qū)ο蟮南嚓P概念匿名函數(shù)和普通函數(shù):匿名函數(shù)就是沒有名字的函數(shù),它的使用可以通過自啟動的方式和賦值給一個變量的方式進行啟用。閉包:實質(zhì)就是函數(shù)的嵌套,在閉包中我們要注意閉包函數(shù)里的this就是window對象。全局作用域、函數(shù)作用域以及塊級作用域在js中只有全局作用域和函數(shù)作用域,沒有塊級作用域,但是我們可以模擬塊級作用域塊級作用域的概念:除函數(shù)外,在大括號中封裝的代碼,就叫塊級作用域。在塊級作用域中申明的變量只在塊級作用域中有效,而使用塊級作用域的好處就是安全和快速。其安全的本質(zhì)就是在塊級作用域中定義的變量和別的區(qū)域的變量不沖突,這就是為什么我們要使用塊級作用域在j

2、s中塊級作用域的實現(xiàn):(Function(){代碼塊;})();這就叫函數(shù)的自啟動。一、面向過程的函數(shù)轉(zhuǎn)換成面向?qū)ο蟮暮瘮?shù)的4個步驟:(對這四個步驟完全沒必要深究,面試不會考,實用性不大!重在理解一種面向過程的思想向面向?qū)ο笏枷氲霓D(zhuǎn)變過程)第一,將通用的變量轉(zhuǎn)換為全局的變量;第二,將所有的函數(shù)獨立出來;第三,將onload的函數(shù)轉(zhuǎn)換為構(gòu)造函數(shù)(將變量轉(zhuǎn)換為屬性,前面加上this);第四,將所有的函數(shù)轉(zhuǎn)換成原型方法;二、面向?qū)ο蟮膶嵗龑傩院驮头椒ǎ簩嵗龑傩苑椒ǎ菏窃跇?gòu)造函數(shù)內(nèi)部使用的方式。特點就是每創(chuàng)建一個對象,就會為了存儲這些屬性或方法開辟新的空間,這樣就造成空間的浪費

3、。原型屬性方法:是在構(gòu)造函數(shù)外部使用的方式。特點就是不用開辟新的空間就可以共同使用其屬性或方法,但是因為大家都在用,其中一個對象改變了其屬性或者方法,其他對象的屬性或方法也跟著改變了。基于以上的兩個方面,我們就想到了混合模式(混合型):具體做法就是,將屬性放在構(gòu)造函數(shù)的內(nèi)(實例屬性),將方法放在構(gòu)造函數(shù)的外部(原型方法)。一般而言,實例屬性+原型方法構(gòu)成混合模式。其原因是:屬性一般是一個對象特有的、具體的屬性。而方法一般是一個對象共通的、共性的方法。例如:年齡,身高,體重等都應該是一個Person的特有的、具體的屬性,不可能大家有同樣的年齡、身高、體重等屬性;但是我們有大

4、多相同的方法,比如我們都要吃飯,是一個方法,都要睡覺,是一個方法,都要工作是一個共有的方法。因此在我們一般的應用中,我們使用實例屬性+原型方法的方式構(gòu)造一個函數(shù)。但是,學習要靈活應用,不是所有的屬性都該是實例屬性,也不是所有的方法都該是原型方法。比如Person如果有個膚色這樣的一個屬性,中國人基本上都是黃色的膚色,我們沒有必要把這個屬性設置為實例屬性,因為如果這樣做的話我們就每創(chuàng)建一個對象,就會創(chuàng)建一個新的屬性就是膚色,其值都一樣是黃色,我們把其設置為原型屬性不是更好?至于方法的具體例子更多,就比如我們的工作的方法,我們有做體力活的方法,有做腦力活的方法,其實這一切在于自

5、己根據(jù)生活中的具體情況來進行設置。一、關于構(gòu)造函數(shù)構(gòu)造函數(shù)只需要明白其結(jié)構(gòu);Function函數(shù)名(){This.屬性1;This.屬性2;}函數(shù)名.prototype.方法名=function(){代碼塊;}。。。。一、面向?qū)ο蟮睦^承繼承有兩種繼承方式:使用call()函數(shù)和forin遍歷父對象.prototype;Call()為了解決引用共享和超類型無法傳參的問題,采用一種叫借用構(gòu)造函數(shù)的技術或者成為對象冒充的方法。For(variinPerson.prototype){Man.prototype[i]=Person.prototype[i]}二、相關小知識點補充:De

6、lete()刪除實例屬性;hasOwnProperty()測試是否具有實例。In用于先判斷實例屬性,再判斷原型屬性。一、關于設計模式概念:字面量的對象的申明,其實就是在設計模式中看作是單例模式。所謂單例模式,技術永遠保持對象的一個實例應用:在多個作用域中,使用同一個非全局的對象。編寫:使用私有變量instance保存單例在使用時初始化,減少資源浪費,返回閉包訪問單例。

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。