今年可能會去面試,對具體要作什麼準備怕一下想不全, 特此列個大綱來一點點複習。javascript
面試崗位: 高級前端開發、前端技術leader或相似崗位css
技術:html
JS前端
基本類型: java
(1)值類型:數值、布爾值、null、undefined。 (2)引用類型:對象、數組、函數。
函數: function與箭頭函數node
http://www.javascriptkit.com/javatutors/javascriptarrowfunctions.shtmlreact
this指針webpack
ES六、ES7特性git
做用域github
閉包
變量提高
var, let, const
經常使用API: Array、Data、String、Math、Object等基礎類型或window下的經常使用API
HTML5 API:
localStorage\SessionStorage
閉包
事件模型: 包括事件執行順序、原理,異步、同步事件特色、區別等。
http://www.ruanyifeng.com/blog/2014/10/event-loop.html
事件捕獲、冒泡
阻止冒泡
阻止默認行爲
異步:ajax, Promise, async await
性能優化
重繪、重排(和瀏覽器相關)
經常使用優化原則或建議
減小 DOM操做、緩存須要屢次操做的DOM對象
瀏覽器兼容性
移動端經驗
跨域
瀏覽器緩存(cache)
原型鏈: prototype、 constructor
unit test
加載js方式: commonJS, AMD,CMD
SEO
頁面內容優化
url優化
函數式編程
純函數、不變性
柯里化(curry)
ramda
面向對象
ES5下原生js實現類
繼承: prototype和其餘方式
框架:
react:
生命週期
高階組件
數據管理: redux
SEO
同構
相關工具/包:
npm
eslint
webpack
babel(compiling ES6\ES7)
mocha
nodejs
express
websocket
長鏈接
文件讀寫
事件模型:同步、異步
安全(因爲一直作內部系統。 在EPAM作的系統也不涉及運維,因此 這塊知識一直是個空白)
XSS
CSRF
click jacking
算法:
經常使用算法的實現方式, 如不用循環遍歷數組、字符串的方法
快速排序、二分法
冒泡
面向對象
封裝、多態、繼承
CSS:
預編譯器: LESS\SASS
後置編譯器: postcss、 autoprefixer
盒子模型
行內、塊元素(display)
position
flex
CSS3特性
OOCSS
響應式: @media 媒體查詢
某些具體問題:
元素在屏幕上居中
相關工具、包
stylelint
HTML
語義化標籤: header、section等
SEO相關
viewport(移動端)
http:
1.1
經常使用http code
2.0
長鏈接
單請求屢次response
輔助工具:
源碼管理:git、github
持續集成: jenkins
IDE: submit text、 VS code
設計模式:
單例
適配器
裝飾器
外觀
發佈訂閱
觀察者
軟件工程:
開發流程:
敏捷開發: scrum
TDD
BDD
管理相關:
溝通:
團隊建設、激勵
先了解團隊,特長、興趣、需求,再根據實際狀況儘可能知足。關注團隊成長
衝突(矛盾)管理
上面不一樣小節可能有重複、如SEO、重繪重排。無所謂
如今先列出大的範圍,以後慢慢補充。
未完待續。。。