編程基礎知識
1.數(shù)據(jù)結(jié)構(gòu)
2.算法
3.時間復雜度
4.面向?qū)ο蠛驮O計模式
5.函數(shù)式編程
前端基礎知識
一、HTML CSS
1.標簽語義化
2.選擇器:常用的選擇器逻杖、選擇優(yōu)先級
3.布局:盒模型、margin(縱向橫向塔猾,負值)、IFC &BFC稽坤、float 布局桥帆、grid 布局
4.定位:absolute relative fixed、定位上下文慎皱、居中對齊
5.圖文:line-height 繼續(xù)
6.響應式:rem老虫、 vm,vh
7.動畫:transfer茫多、transltion祈匙、animation
二、ES
1.變量:類型判斷天揖、值類型和引用類型夺欲、深拷貝
2.原型和原型鏈:prototype和_proto_、class和繼承
3.作用域和變量:自由變量和作用域今膊、callback & callbackhell些阅、event loop、微任務和宏任務
4.模塊化:AMD CMD斑唬、commonjs市埋、ES6 Module、commonjs和 ES6 Module的區(qū)別
5.其他:數(shù)組恕刘,對象缤谎,常用API、Set和Map褐着、Proxy
三坷澡、Web API
1.BOM 操作:UA判斷;路由:hashchange/history go&history.back/pushState&popState
2.DOM操作:DOM樹形結(jié)構(gòu)含蓉、常用API:查詢频敛、新增、刪除馅扣、移動節(jié)點等斟赚、屬性操作(以及attr和prop的區(qū)別) 、DOM操作的性能優(yōu)化
3.DOM事件:事件綁定岂嗓、事件冒泡模型汁展、事件代理
4.ajax:XML HttpRequest、跨域(瀏覽器同源策略)厌殉、fetch
5.存儲:cookie食绿、localStorage 和 sessionStrorage、cookie 和 localStorage區(qū)別
四公罕、HTTP
1.常用Method器紧、2.常用請求頭、3.常見狀態(tài)碼
4.restful API楼眷、5.cookie的本質(zhì)铲汪、6.瀏覽器緩存機制
7.https、8.websocket用于直播聊天
? ??
五罐柳、綜合性問題
1.性能問題:資源加載掌腰、渲染、操作(防抖张吉、節(jié)流)
2.安全(xss齿梁、csrf)
3.從url輸入到加載的全部問題
框架和工具
六、jQuery/Zepto
1.DOM查詢? ?2.DOM操作? ?3.DOM事件? ?4.ajax
5.$('div')數(shù)據(jù)結(jié)構(gòu)? ?6.了解源碼
七肮蛹、Vue
1.使用:常用指令勺择、組件的配置、組件生命周期伦忠、父子組件通訊省核、slot、動態(tài)組件昆码、異步組件气忠、nextTick、錯誤處理
2.原理:理解MVVM模式赋咽、vue數(shù)據(jù)監(jiān)聽笔刹、雙向數(shù)據(jù)綁定、模板渲染冬耿、vdom和diff算法
3.周邊生態(tài):vue-router舌菜、vue、UI框架(如element)亦镶、axios
八日月、react
1.使用:jsx使用、setState缤骨、組件生命周期爱咬、父子組件通訊、受控組件&非受控組件绊起、錯誤處理性能優(yōu)化精拟、高階組件、hooks
2.原理:組件化、jsx本質(zhì)蜂绎、不可變數(shù)據(jù)(純函數(shù))栅表、immutable.js、vdom$diff算法
3.周邊生態(tài):react-rounter师枣、redux怪瓶、UI庫,如ant-design
九践美、webpak
基本概念洗贰、基本配置、常用loader陨倡、常用插件敛滋、性能優(yōu)化
十、其他工具:
IDE及常用操作兴革、gif常用命令绎晃、linux常用命令、抓包工具帖旨、mock數(shù)據(jù)
十一箕昭、nodejs
1.處理http請求:處理路由(restful API)、處理cookie
2.stream
3.框架(express koa2 egg)使用&中間件機制
4.多進程&進程守護
5.SSR:模板引擎(如ejs)解阅、vue nuxt落竹、react next
6.server其他軟件:mysql mongodb、redis常見操作货抄、nginx常見配置述召、用戶認證
十二、跨端:
1.hybrid & js-bridge? ?2.小程序? ?3.RN Weex? ?4.快應用