一些高級js用法

最近在學(xué)習(xí)js,總結(jié)了一些高級js用法

js apply()和call()的用法
https://www.cnblogs.com/chenhuichao/p/8493095.html
js模塊化
#1.es6的模塊化:
https://blog.csdn.net/lihongxun945/article/details/49031383
只支持靜態(tài)的導(dǎo)入和導(dǎo)出,也就是說必須在編譯時就能確定,在運(yùn)行時才確定是不行的。為什么這么做:
1.性能,在編譯階段即完成所有模塊導(dǎo)入,如果在運(yùn)行時進(jìn)行會降低速度
2.更好的檢查錯誤,比如對變量類型進(jìn)行檢查
#2.AMD和CMD的區(qū)別
AMD 即Asynchronous Module Definition,中文名是異步模塊定義的意思。它是一個在瀏覽器端模塊化開發(fā)的規(guī)范。
requireJS主要解決兩個問題:
1.多個js文件可能有依賴關(guān)系,被依賴的文件需要早于依賴它的文件加載到瀏覽器 
2、js加載的時候?yàn)g覽器會停止頁面渲染,加載文件越多,頁面失去響應(yīng)時間越長 
require()函數(shù)在加載依賴的函數(shù)的時候是異步加載的,這樣瀏覽器不會失去響應(yīng),它指定的回調(diào)函數(shù),只有前面的模塊都加載成功后,才會運(yùn)行,解決了依賴性的問題。
CMD 即Common Module Definition通用模塊定義
區(qū)別
1、AMD推崇依賴前置,在定義模塊的時候就要聲明其依賴的模塊 
2、CMD推崇就近依賴,只有在用到某個模塊的時候再去require 
js高級函數(shù)
1.惰性載入函數(shù)https://blog.csdn.net/xiaobianjava/article/details/50617896
2.函數(shù)柯里化https://segmentfault.com/a/1190000012145489
3.級聯(lián)函數(shù):類似于函數(shù)式編程
js面向切面編程
https://blog.csdn.net/qq_17347575/article/details/78039216
js高級技巧
變量作用域和閉包
this指針的使用,誰調(diào)他就指向誰
按值傳遞和按引用傳遞
多線程
https://www.cnblogs.com/woodk/articles/5199536.html
Concurrent.Theadjs 
WebWork
https://www.ibm.com/developerworks/cn/web/1112_sunch_webworker/
https://segmentfault.com/a/1190000015597029
https://www.cnblogs.com/Tohold/p/9173137.html
跨域
web安全
Web應(yīng)用安全發(fā)展與介紹
HTTP協(xié)議與會話管理
Web應(yīng)用的組成與網(wǎng)頁的渲染
瀏覽器特性與安全策略:同源策略,沙盒框架,flash安全沙箱,cookie的安全策略,內(nèi)容安全策略
設(shè)計模式
設(shè)計原則:開閉原則、里氏轉(zhuǎn)換原則,依賴原則,接口隔離原則,合成/聚合復(fù)用原則,迪米特原則
單利模式、構(gòu)造函數(shù)模式、建造者模式、工廠模式、外觀模式、代理模式、觀察者模式、策略模式、命令模式、迭代器模式、職責(zé)模式、適配器模式、模板方法、原型模式。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 我們是誰 IMPLUS 雖然不需要融資,但依然是個初創(chuàng)公司, 你需要貢獻(xiàn)代碼,我知道這是你的最愛 ; 但我們更需要...
    MichelleHuang閱讀 388評論 1 1
  • 一、JavaScript高級第一天 1.JavaScript基礎(chǔ)知識復(fù)習(xí) JavaScript的基本組成 Java...
    海棠未雨閱讀 270評論 0 0
  • 高級JS 預(yù)解釋 在JS中如果變量的名字和函數(shù)的名字重復(fù)了,也算沖突,在預(yù)解釋中,如果名字已經(jīng)聲明過了,不需要在重...
    筱貳_梁閱讀 345評論 0 1
  • 面向?qū)ο?面向過程的思維方式:就是把解決問題的關(guān)注點(diǎn)放到解決問題的每一個詳細(xì)步驟上; 面向?qū)ο蟮乃季S方式:就是把解...
    magic_pill閱讀 768評論 0 7
  • 繼承 一、混入式繼承 二、原型繼承 利用原型中的成員可以被和其相關(guān)的對象共享這一特性,可以實(shí)現(xiàn)繼承,這種實(shí)現(xiàn)繼承的...
    magic_pill閱讀 1,126評論 0 3

友情鏈接更多精彩內(nèi)容