原创 深度優先遍歷與廣度優先遍歷

深度優先遍歷不斷深入圖中並在棧中保存了所有分叉的頂點;廣度優先遍歷則像扇面一般掃描圖,用一個隊列保存訪問過的最前端的頂點。深度遍歷的方式是尋找離起點更遠的頂點,只在碰到死衚衕時才訪問進出的頂點,廣度遍歷則會首先覆蓋起點附近的頂點,只在臨近的

原创 JS隱式的類型轉換

由於JS的弱類型特性,在進行JS的==, 排序運算符, 加減乘除,在對非原始值進行操作時,都會調用內部的toPrimitive()方法。 // 例外 {} + [] // 0 {}會被認爲代碼塊 故只剩下 +[], +0 0 // 當進行復

原创 瀏覽器的Event Loop

微任務隊列的任務將在當前輪次的事件輪詢中被推入微任務隊列 而macrotask隊列中的任務必須等待下一輪時事件循環 macrotasks: setTimeout, setInterval, setImmediate, requestAn

原创 JS數組去重的集中方案

JS去重的幾種方案 new Set() 雙層for循環 + splice Array.fliter + indexof Arroy.sort + 排序後比較相鄰元素是否相等壓入數組 for ... of + includes for ...

原创 僞元素的content屬性使用中文字符集可能會出現亂碼情況

僞元素的content使用中文字符集在某些瀏覽器可能會出現亂碼的情況 解決辦法: * 確保HTML的META屬性 設置爲 charset='utf-8' * 使用[站長工具][1] 或者JS的escape將中文字符集轉成Unico

原创 Redux的簡單用法

Redux簡單的一個小實例 import React from 'react'; import { createStore } from 'redux'; const initState = [ { id: 1,

原创 TypeScript基本類型(一)

TypeScript基礎知識-基本類型(一) 字符 // 字符 - 模板字符串 佔位符 let a: string = "a"; let b: string = "b"; number // number let devLiteral: n

原创 記錄下git1的使用

記錄下多人協作中常用的git命令 Q: fatal: refusing to merge unrelated histories // (拒絕合併不相關的分支) // 解決辦法: git pull origin master --allo

原创 記錄一下常用的vscode快捷鍵

ctrl + A 全選 ctrl + u 轉換成小寫 ctrl + shift + u 轉化成大寫 shift + alt + 鼠標點擊劃過的地方 = 多選 shift + alt + i 全選實現多選最後一個 ctrl + f 查找 c

原创 webpack學習記錄之可能面試思考題

本文記錄一些webpack的知識點及面試過程中可能會出現的面試題或思考題? source map 基本使用與其原理是什麼 entry,output中常用的配置項有哪些,如何給靜態資源配置CDN上環境 external的使用 tree sha

原创 避免CDN引用資源被webpack打包進出口bundle.js文件

解決cdn不做任何配置也同樣被打包進webpack的出口文件的問題 先說說爲什麼使用CDN 打包事件太長,打包1代碼體積太大,請求慢 服務器不穩定帶寬不高,使用CDN可以迴避服務器帶寬問題 資源優化 解決方案 使用externals配置

原创 JS高級面試之hybrid部分

該文章主要記錄hybrid前端客戶端混合開發的一些知識點 Hybrid 1. hybrid是什麼,爲何用hybrid? hybrid是客戶端與前端的混合開發 hybrid存在的核心意義在意快速迭代,無需審覈 hybrid實現流程,以及web

原创 jQuery,zepto源碼的簡單實現記錄

本文記錄jQuery,Zepto對js的一些封裝庫的知識,我希望從本文開始去深入學習js這門語言,以及在面向對象,原型上封裝的使用。讓自己在js方面有能夠有一定進步。共勉 jQuery庫 簡單的jQuery庫的實現 需要先了解閉包,立即執行

原创 統計當前頁面有多少個標籤

統計當前頁面含有多少個標籤 ES6 const domNames = Array.form(document.querySelectorAll('*')).map(v => v.tagName); const result = new Se

原创 三欄佈局解決方案彙總

三欄佈局解決方案 三欄佈局,在開發中十分常見,也常作爲面試題作爲一個佈局考點,大致上就是兩邊固定,中間自適應的一種佈局方案,以下彙總出幾種幾種解決方案,供學習與參考。 Float流式佈局 <style type="text/css">