千鋒教育JavaScript全套視頻教程(10天學會Js,前端javascrip

一.模塊化(module)開發(fā)
模塊化開發(fā)不是js業(yè)務(wù)邏輯,工作中維護和開發(fā)js代碼的一種方式
關(guān)注的是開發(fā)過程中減少代碼的沖突和依賴沖突:同事間的代碼不再覆蓋,不再相互影響...依賴:通過js文件看到彼此的依賴(相互引用),開發(fā)過程中彼此引用同事的代碼或者工具...上面的加載方式都不能解決沖突和依賴,引入模塊化的概念
二.模塊化的意義(解決沖突依賴)
歷史上,JavaScript一直沒有模塊(module)體系,無法將一個大程序拆分成互相依賴的小文件,再用簡單的方法拼裝起來
在ES6之前,社區(qū)制定了一些模塊加載方案,最主要的有CommonJS和AMD兩種。前者用于服務(wù)器,后者用于瀏覽器。
ES6在語言標準的層面上,實現(xiàn)了模塊功能,而且實現(xiàn)得相當簡單,完全可以取代
CommonJS和AMD規(guī)范,成為瀏覽器和服務(wù)器通用的模塊解決方案。
三.學習ES6里面的模塊化開發(fā),徹底解決沖突和依賴
1.定義模塊(導出模塊):必須導出模塊才能給其它同事使用,自己復用
2.調(diào)用模塊(導入模塊):導入自己或者同事提供的模塊,方便開發(fā)
3.配置模塊(路徑問題):調(diào)用模塊的路徑配置(./當前目錄 ../l上一級目錄根目錄)
四.定義模塊(導出模塊)
1.export導出多個內(nèi)容
—個模塊就是一個獨立的文件。該文件內(nèi)部的所有變量,外部無法獲取。如果你希望外部能夠讀取模塊內(nèi)部的某個變量,就必須使用export關(guān)鍵字輸出該變量。
2.export default暴露一個變量或者函數(shù),調(diào)用的時候自定義名稱,一個模塊只能有一個默認輸出,因此export default命令只能使用一次。五.調(diào)用模塊(導入模塊)
import
利用import關(guān)鍵字導入模塊
語法: import from '.ljs模塊的路徑.js'
注意這里的(./)表示當前的模塊來自本地,不是第三方的,這就是配置模塊
六.HTML頁面加載模塊化文件的規(guī)則
瀏覽器加載ES6模塊,也使用script標簽,但是要加入type="module"屬性。
使用靜態(tài)服務(wù)器預覽(live Server)
如果網(wǎng)頁有多個script type="module",它們會按照在頁面出現(xiàn)的順序依次執(zhí)行。
正則的符號
1.[]字符集合,表示寫在[]里面的任意一個都行如果中括號里面存在^符號,表示取反的意義
2.行首->行尾的匹配,類似于恒等匹配,一般寫在正則規(guī)則的開始和結(jié)束位置
^行首匹配
$行尾匹配3.登匹配數(shù)量
3.1.x{3}:匹配3個x
/八x{3,5}$/匹配至少3個,最多5個/^x{3,}$/匹配至少3個,最多無限4.()限定一組元素
5.正則里面的或a|b表示字母a或者b都可以
ES6部分
繼承是面向?qū)ο缶幊讨械囊环N機制,它允許一個
類從另一個類中繼承屬性和方法。被繼承的類稱為父類或超類(super),繼承這些屬性和方法的類稱為子類。
繼承的主要優(yōu)勢是代碼重用。通過繼承,子類可以直接使用父類的屬性和方法,而無需重新編寫相同的代碼。這使得代碼更易于維護和擴展,可以提高代碼的可讀性和可靠性。
在ES5中,需要通過構(gòu)造函數(shù)迷承來繼承構(gòu)造函數(shù)內(nèi)的私有部分。
通過原型鏈繼承或者寄生繼承來繼承原型內(nèi)的公有部分。
在ES6中,引入了class語法糖??梢允褂?/p>
extends關(guān)鍵字繼承—個類,并使用super關(guān)鍵字調(diào)用父類的構(gòu)造函數(shù)和方法。
super 關(guān)鍵字用于訪問和調(diào)用對象父類上的函數(shù),可以調(diào)用父親類的構(gòu)造函數(shù),也可以調(diào)用父親類的普通函數(shù)
1.繼承中,如果實例化子類輸出一個方法,先看子類有沒有這個方法,如果有就執(zhí)行子類的方法
2繼承中,如果子類里面沒有,就去查找父類有沒有這個方法,如果有,就執(zhí)行父類的這個方法(就近原則)