什麼AMD、CMD、Nodejs、HTTP協議,CSS模式、javascript面向對象,順手捏來,入職後沒接觸這些東西,又不太熟悉了。本文僅爲複習,溫故知新。javascript
原文:https://github.com/jayli/jayli.github.com/issues/19 此外重點參照 #16css
1. CSS 盒子模型,絕對定位和相對定位
1)清除浮動,何時須要清除浮動,清除浮動都有哪些方法html
2)如何保持浮層水平垂直居中前端
3)position 和 display 的取值和各自的意思和用法java
4)樣式的層級關係,選擇器優先級,樣式衝突,以及抽離樣式模塊怎麼寫,說出思路,有無實踐經驗jquery
2. JavaScript 基礎
1)JavaScript 裏有哪些數據類型,解釋清楚 null 和 undefined,解釋清楚原始數據類型和引用數據類型。好比講一下 1
和 Number(1)
的區別git
2)將一下 prototype 是什麼東西,原型鏈的理解,何時用 prototype
github
3)函數裏的this
什麼含義,什麼狀況下,怎麼用。web
3)apply
和 call
什麼含義,什麼區別?何時用。面試
4)數組和對象有哪些原生方法,列舉一下,分別是什麼含義,好比連接兩個數組用哪一個方法,刪除數組的質定項。
3. JavaScript 的面向對象
1)JS 模塊包裝格式都用過哪些,CommonJS、AMD、CMD、KMD。定義一個js 模塊代碼,最精簡的格式是怎樣。
2)JS 怎麼實現一個類。怎麼實例化這個類。
3)是否瞭解自定義事件。jQuery裏的fire函數是什麼意思,何時用。
4)說一下了解的js 設計模式,解釋一下單例、工廠、觀察者。
5)ajax 跨域有哪些方法,jsonp 的原理是什麼,若是頁面編碼和被請求的資源編碼不一致如何處理?
4. 開源工具
1)是否瞭解開源的工具 bower、npm、yeoman、Grunt、gulp,有無用過,有無寫過,一個 npm 的包裏的 package.json 具有的必要的字段都有哪些(名稱、版本號,依賴)
2)fiddle、charles 有沒有用過,何時用
3)會不會用 ps 扣圖,png、jpg、gif 這些圖片格式解釋一下,分別何時用。是否瞭解webp
4)說一下你經常使用的命令行工具
5)會不會用git,說上來幾個命令,說一下git和svn的區別,有沒有用git解決過沖突
5. 計算機基礎
1)說一下網絡五層模型(HTTP協議從應用層到底層都基於哪些協議),HTTP 協議頭字段說上來幾個,緩存字段是怎麼定義的,http和https的區別,在具體使用的時候有什麼不同。是否儘量詳細的掌握HTTP協議。
2)cookies 是幹嗎的,服務器和瀏覽器之間的 cookies 是怎麼傳的,httponly 的 cookies 和可讀寫的 cookie 有什麼區別,有無長度限制
3)從敲入 URL 到渲染完成的整個過程,包括 DOM 構建的過程,說的約詳細越好。
4)是否瞭解web注入攻擊,說下原理,最多見的兩種攻擊(XSS 和 CSRF)瞭解到什麼程度。
5)是否瞭解公鑰加密和私鑰加密。如何確保表單提交裏的密碼字段不被泄露。驗證碼是幹嗎的,是爲了解決什麼安全問題。
6)編碼常識:文件編碼、URL 編碼、Unicode編碼 什麼含義。一個gbk編碼的頁面如何正確引用一個utf8的的資源
6. 考察學習能力和方法
1)你天天必須登陸的網站(前端技術相關)是什麼?
2)前端技術方面看過哪些書,有無筆記,都有哪些收穫。
3)收藏了哪些代碼片斷?
4)怎麼理解前端技術的大趨勢?本身再作哪方面的知識儲備?
5)是否瞭解或精通其餘(後端)的編程語言?
6)作過的項目有沒有什麼(視覺、交互)美感?什麼是美?你以爲讓你本身賞心悅目的網站或應用有哪些?
7)作項目有沒有遇到哪些印象深入的技術攻關,具體遇到什麼問題,怎麼找答案的,最後怎麼解的。