千鋒教育web前端高頻面試題視頻教程,kerwin大話前端面試秘籍(附答案...

1、單例模式
1.單例模式就是一個實例在整個網(wǎng)頁的生命周期里只創(chuàng)建一次
2.通過單例模式,可以在任何需要使用該實例的地方,通過全局訪問點獲取該實例
3.延遲實例化:單例模式可以延遲實例化,即在第一次訪問時才創(chuàng)建實例
4.數(shù)據(jù)共享:由于單例模式只創(chuàng)建一個實例,所以其中的數(shù)據(jù)可以在不同的場景和代碼中進行共享
單例模式就是一個實例在整個網(wǎng)頁的生命周期里只創(chuàng)建一次,后續(xù)再調(diào)用實例創(chuàng)建函數(shù)的時候,返回的仍是之前創(chuàng)建的實例。在實際開發(fā)中應(yīng)用十分廣泛,例如頁面中的登錄框,顯示消息的提示窗
2、策略模式
策略模式是指將策略(算法)封裝起來,策略的目的是將算法和使用分離開。
3、代理模式
代理模式很好理解,我們不能直接使用目標函數(shù),而是通過調(diào)用代理函數(shù)來實現(xiàn)對目標函數(shù)的使用。
4、發(fā)布訂閱模式
發(fā)布訂閱者模式是一種多對多的依賴關(guān)系。通過事件的綁定,通知給需要接受的訂閱者,讓訂閱者更新自己的狀態(tài)。發(fā)布訂閱模式在實際應(yīng)用中非常常見,例如,我們在微信App上關(guān)注了某個公眾號,當該公眾號有新文章發(fā)布時,就會通知我們。
5、命令模式
所謂命令模式就是將下要執(zhí)行的業(yè)務(wù)邏輯封裝到一個函數(shù)或類中,不需要具體誰來執(zhí)行該命令的
6、觀察者模式
觀察者模式是一對多的一種依賴關(guān)系,讓多個觀察者對象同時監(jiān)聽某一個主體對象。這個主體發(fā)生狀態(tài)的時候。會通知所有的觀察者對象,自動更新自己的狀態(tài)。觀察者模式跟發(fā)布訂閱模式兩者之間的區(qū)別在于觀察者模式知道自己所派發(fā)的目標對象是誰。而發(fā)布訂閱者模式觀察者和訂閱者之間不清楚對方是誰。是由中間層進行交互完成派發(fā)任務(wù)。
7、工廠模式
工廠模式是JS中很常見的一種模式,用來批量創(chuàng)建對象,使用工廠模式可以幫助我們避免創(chuàng)建同類對象時產(chǎn)生冗余代碼