国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當前位置: 首頁 > news >正文

教育網(wǎng)站建設改版百度推廣在線客服

教育網(wǎng)站建設改版,百度推廣在線客服,沈陽和平三好街做網(wǎng)站,軟件開發(fā)培訓技術學校文章目錄 前言介紹實現(xiàn)優(yōu)缺點應用場景后言 前言 hello world歡迎來到前端的新世界 😜當前文章系列專欄:前端設計模式 🐱?👓博主在前端領域還有很多知識和技術需要掌握,正在不斷努力填補技術短板。(如果出現(xiàn)錯誤&#…

文章目錄

  • 前言
  • 介紹
  • 實現(xiàn)
  • 優(yōu)缺點
  • 應用場景
  • 后言

前言

hello world歡迎來到前端的新世界


😜當前文章系列專欄:前端設計模式
🐱?👓博主在前端領域還有很多知識和技術需要掌握,正在不斷努力填補技術短板。(如果出現(xiàn)錯誤,感謝大家指出)🌹
💖感謝大家支持!您的觀看就是作者創(chuàng)作的動力

介紹

觀察者模式又稱發(fā)布-訂閱模式(Publish/Subscribe Pattern),是我們經(jīng)常接觸到的設計模式,日常生活中的應用也比比皆是,比如你訂閱了某個博主的頻道,當有內容更新時會收到推送;又比如JavaScript中的事件訂閱響應機制。觀察者模式的思想用一句話描述就是:被觀察對象(subject)維護一組觀察者(observer),當被觀察對象狀態(tài)改變時,通過調用觀察者的某個方法將這些變化通知到觀察者。

實現(xiàn)

觀察者模式中Subject對象一般需要實現(xiàn)以下API:

  • subscribe(): 接收一個觀察者observer對象,使其訂閱自己
  • unsubscribe(): 接收一個觀察者observer對象,使其取消訂閱自己
  • fire(): 觸發(fā)事件,通知到所有觀察者
// 被觀察者
function Subject() {this.observers = [];
}Subject.prototype = {// 訂閱subscribe: function (observer) {this.observers.push(observer);},// 取消訂閱`在這里插入代碼片`unsubscribe: function (observerToRemove) {this.observers = this.observers.filter(observer => {return observer !== observerToRemove;})},// 事件觸發(fā)fire: function () {this.observers.forEach(observer => {observer.call();});}
}

驗證是否訂閱成功

const subject = new Subject();function observer1() {console.log('Observer 1 Firing!');
}function observer2() {console.log('Observer 2 Firing!');
}subject.subscribe(observer1);
subject.subscribe(observer2);
subject.fire();//輸出:
Observer 1 Firing! 
Observer 2 Firing!

驗證一下取消訂閱是否成功:

subject.unsubscribe(observer2);
subject.fire();//輸出:
Observer 1 Firing!

優(yōu)缺點

優(yōu)點

  • 支持簡單的廣播通信,自動通知所有已經(jīng)訂閱過的對象
  • 目標對象與觀察者之間的抽象耦合關系能單獨擴展以及重用
  • 增加了靈活性
  • 觀察者模式所做的工作就是在解耦,讓耦合的雙方都依賴于抽象,而不是依賴于具體。從而使得各自的變化都不會影響到另一邊的變化。

缺點

過度使用會導致對象與對象之間的聯(lián)系弱化,會導致程序難以跟蹤維護和理解

應用場景

  • DOM事件
document.body.addEventListener('click', function() {console.log('hello world!');
});
document.body.click()

后言

創(chuàng)作不易,要是本文章對廣大讀者有那么一點點幫助 不妨三連支持一下,您的鼓勵就是博主創(chuàng)作的動力

http://aloenet.com.cn/news/36477.html

相關文章:

  • 可以做視頻推廣的網(wǎng)站有哪些內容搜全網(wǎng)的瀏覽器
  • 微信營銷 網(wǎng)站建設開源cms建站系統(tǒng)
  • 建網(wǎng)站有域名和主機seo推廣思路
  • 網(wǎng)站開發(fā) 避免 字段變化 代碼廣告公司推廣平臺
  • 濟南做網(wǎng)站哪里便宜網(wǎng)絡營銷比較成功的企業(yè)
  • 鄄城做網(wǎng)站谷歌商店安卓版下載
  • 企業(yè)網(wǎng)站建設優(yōu)化做個小程序需要花多少錢
  • 網(wǎng)站建設在哪能看人工智能培訓心得體會
  • 網(wǎng)站建設gzdlzggseo優(yōu)化技巧有哪些
  • 網(wǎng)站建設外包公司網(wǎng)站搜索工具
  • 小米路由做網(wǎng)站服務器代運營靠譜嗎
  • 簡單的網(wǎng)站開發(fā)購物鏈接
  • wordpress webvr網(wǎng)絡優(yōu)化器
  • 建高鐵站賺錢嗎百度資源共享鏈接分享組
  • 烏市seo網(wǎng)絡營銷流程網(wǎng)頁怎么優(yōu)化
  • 那個視頻網(wǎng)站做公開課比較好如何查詢百度搜索關鍵詞排名
  • 如何做閑置物品自己的網(wǎng)站外鏈工廠
  • 風險網(wǎng)站怎么解決方案軟文廣告經(jīng)典案例800字
  • 網(wǎng)站建設規(guī)劃ppt模板網(wǎng)站網(wǎng)絡推廣企業(yè)
  • 無錫市網(wǎng)站建設百度公司全稱叫什么
  • 大慶市住房與城鄉(xiāng)建設局網(wǎng)站品牌宣傳文案范文
  • 小白學做網(wǎng)站買什么書哪里能搜索引擎優(yōu)化
  • 利用html做博客網(wǎng)站做百度推廣多少錢
  • 網(wǎng)站建設方案書 備案百度排名查詢
  • 網(wǎng)站建設要考慮哪些企業(yè)如何進行網(wǎng)絡營銷
  • 做圖網(wǎng)站有哪些東西嗎建網(wǎng)站用什么軟件
  • 用java做視頻網(wǎng)站app投放渠道有哪些
  • django做的網(wǎng)站舉例資源網(wǎng)站優(yōu)化排名軟件
  • 跨越速運在黑龍江黑河網(wǎng)點網(wǎng)絡優(yōu)化工程師主要做什么
  • 望牛墩做網(wǎng)站每日軍事新聞