原创 EventBus 實現

實現: class MyEventBus{ constructor() { this.eventQueue = {} } on(eventName, callback) { //訂閱 if (!this.event

原创 hash模式和history模式 實現原理及區別

目前單頁應用(SPA)越來越成爲前端主流,單頁應用一大特點就是使用前端路由,由前端來直接控制路由跳轉邏輯,而不再由後端人員控制,這給了前端更多的自由。 目前前端路由主要有兩種實現方式:hash 模式和 history模式,下面分別

原创 JS 異步編程

教程簡介 作者: TigerChain 地址: https://www.jianshu.com/p/876e68fd6a1c 本文出自 TigerChain 簡書 手把手教 Vue 系列 本節大綱 正文 js 是一門

原创 事件綁定中this指向問題

<!DOCTYPE html> <html lang="zh-cmn-Hans"> <head> <meta charset="utf-8"> <title>This</title> <style>

原创 JS異步操作:概述

目錄 1. 單線程模型 什麼是單線程模型 JS爲什麼採用單線程模式 單線程模式的優缺點 2. 同步任務 和 異步任務 3. 任務隊列 和 事件循環 4. 單線程模型 回調函數 事件監聽 發佈/訂閱 5. 單線程模型 串行

原创 防抖、節流 和 預加載、懶加載

目錄 1. 防抖 節流 2. 預加載 3. 懶加載 (一)防抖 節流 1. 防抖 對於短時間內連續觸發的事件(如滾動事件),防抖的含義就是讓某個時間期限(如上面的1000毫秒)內,事件處理函數只執行一次。 防抖實現思路:在第一次觸

原创 JS 類的創建繼承 與 new原理實現

目錄 1. 類的創建 工廠模式 構造函數模式 原型模式 組合模式 2. 類的繼承 原型鏈繼承 構造繼承 實例繼承 拷貝繼承 組合繼承 寄生組合繼承 3. new 的原理實現 學習和參考於: JS定義類的六種方式詳解 JS

原创 call、apply、bind 原理實現

目錄 1. call 的模擬實現 2. apply 的模擬實現 3. bind 的模擬實現 4. 三者異同 學習並參考於: JavaScript深入之call和apply的模擬實現 JS的call,apply與bind詳解,及其

原创 Generator 學習筆記

目錄 1. async await 2. Generator 本文僅是學習:異步編程二三事 | Promise/async/Generator實現原理解析 中一部分知識的學習筆記,(強烈推薦閱讀原文) (一)async aw

原创 HTTPS 超詳解 一文搞定HTTPS面試知識

目錄 1. HTTP基本原理 基本概念 HTTPS 優缺點 2. 加密 共享密鑰加密 公開密鑰加密 HTTPS採用混合加密機制 3. 證書 數字證書 EV SSL 證書 客戶端證書 自簽

原创 TCP超詳解 一文搞定TCP面試知識

目錄 1. TCP數據包結構 2. TCP三次握手 和 四次握手 TPC三次握手 TCP四次揮手 3. TCP如何保證傳輸可靠性 詳解 概述 校驗和 確認應答+序列號 超時重傳 停止等待協議 流量控制 擁塞控制 連接管理

原创 HTTP超詳解 一文搞定HTTP面試知識

目錄 1. HTTP原理 概念 HTTP過程 特點 2. HTTP請求報文 請求報文結構 請求行(請求方法、URL、協議版本) 請求方法 URL 協議版本 請求頭 請求體 3. HTTP響應報文 響應報文結構 響應

原创 Vue:深入理解組件

目錄 1. 組件註冊 全局註冊 局部註冊 2. Prop Prop的大小寫 Prop驗證 傳遞Prop 3. 插槽 基本使用 後備內容 作用域插槽 4. 動態組件 & 異步組件 動態組件 在動態組件上使用 keep

原创 Vue基礎:指令詳解

目錄 v-html v-for v-if v-show v-model v-bind v-on v-once 1. v-html: 雙大括號會將數據解釋爲普通文本,而非 HTML 代碼。爲了輸

原创 Vue基礎:計算屬性 與 偵聽器

(一)計算屬性computed 對於任何複雜邏輯,你都應當使用計算屬性。 1. 基本使用 計算屬性是基於它們的響應式依賴進行緩存的。只在相關響應式依賴發生改變時它們纔會重新求值。這就意味着只要依賴數據沒有發生改變,computed