# 原理篇
---
#### 1. 描述`js`在瀏覽器端的執行流程♥♥♥♥
- 執行棧
- 事件隊列
- 微任務及宏任務
- `setTimeout`與`promise`的執行順序
#### 2. 深拷貝與淺拷貝♥♥♥
- 如何實現?
#### 3. 防抖和節流♥♥♥
- 定義
- 分別如何實現
#### 4. 閉包♥
- 概念
- 特性
- 缺點
#### 5. `jsonp`的實現原理♥♥
#### 6. `js`的事件模型都有哪些♥♥
- 事件冒泡
- 事件捕捉
- DOM事件流
#### 7. `js`的基本數據類型有哪些♥
- 數據類型
- 如何判斷類型
#### 8. `call`與`apply`的區別是什么♥
#### 9. 函數聲明和函數表達式的區別♥
#### 10. `new`操作符具體干了什么
#### 11. `js`延遲加載的方式有哪些
#### 12. 描述下盒模型
#### 13. 瀏覽器輸入URL后發生了什么
#### 14. 什么是負載均衡
#### 15. 原型及原型鏈
- 概念
- 如何實現繼承
-
#### 16. 瀏覽器的渲染過程
- DOM樹
- 渲染樹
#### 17. 重繪和回流
- 區別和關系
- 如何最小化
#### 18. 同源策略
#### 19. vue的生命周期
#### 20. vue父子組件通信
#### 21. `vue`中`v-for`中`key`值的作用
#### 22. `vue`中計算屬性
#### 23. 單頁應用的優缺點
#### 24. 常見的HTTP請求頭
#### 25. 介紹觀察者模式
- 觀察者和發布訂閱的區別
#### 26. 介紹`http2.0`
#### 27. 介紹`service worker`
---
# 實戰篇
---
#### 1. 實現一個雙向的數據綁定♥♥
- `Object.defineProperty`
#### 2. 實現一個簡單的路由♥♥
#### 3. js原生的ajax實現♥♥♥♥
#### 4. 數組去重
- 能寫幾種方法?
#### 5. 文件上傳
- 小文件與大文件
- 斷點續傳
- 切片
#### 6. 上萬條數據的`Table`渲染
- 數據緩存
- 可視化區域加載固定數量的數據
- 數據緩沖
----
- 前端
- C1-Javascript
- H5圖片分塊和斷點續傳
- JavascriptPatterns[Stoyanstefanov]
- macotask和microtask
- 前端代碼生成器
- 跨域
- 頁面回到頂部滾動按鈕實現
- C2-CSS
- 瀏覽器的一些單位
- 盒模型
- 移動端判斷橫豎屏
- C3-框架
- ReactNative
- 開發環境搭建(安卓篇)
- Vue
- vue+pdfjs使用
- vue+typescript使用實踐
- vue+webpack3.x集成typescript
- Vue源碼3
- vue源碼分析1
- vue源碼分析2
- vue筆記
- C4-工具
- git
- Gitlab-CICD
- mock規則
- vscode-settings
- webpack自定義命令,切換代理地址
- 正則表達式
- 深入淺出webpack
- C5-Node
- express
- express源碼閱讀
- nightmare使用指南
- 爬蟲1.0
- C6-微信
- 微信
- C7-Canvas
- 基礎API
- 前端隨筆筆記
- 后端
- C1-Java
- shiro
- C2-Linux
- ffmpeg
- ITerm
- Linux
- MongoDB安裝
- MySql安裝
- Ngnix反向代理
- 常見錯誤
- 備忘
- mac
- 備忘-Work
- 備忘Link
- 服務器資源
- 教程
- Hexo個人博客搭建筆錄
- 文檔
- CSS編碼規范
- 前端編碼規范
- 隨筆
- 整理
- 正則
- 鏈接收藏
- 面試
- CodeWars題庫
- CodeWars題庫(二)
- Java社招面試題
- Java面試
- Web面試
- 前端筆試題
- 筆試題