阿里一面
1、 自我介紹、說完3個項目后插入
2、 用戶體驗 項目邏輯 項目優勢在哪里?
3、 項目一三中的難點(后台管理系統)
插件的使用及擴展、動態url(pushstate、historyJS、hash)、用hash實現的原理
4、 項目二中的難點(移動端頁面自適應)
動態設置viewport+rem、 (問的特別詳細、是否知道其他方案?)
動畫 animation (jq的animation怎么實現的?源碼。。。)
cookie和localstorage 應用 區別 局限性
5、 圖片輪播、跑馬燈效果怎么是實現
6、 web安全 防范 正則
7、 版本控制工具
(緊張理解成構建工具了grunt、gulp)
那就先說說構建工具gulp
說gulp就扯到node (都不是太熟,扯了下原理、問寫過什么工具,弱弱的回答都是用用別人的寫好的模塊)
8、 回到版本控制工具 (svn、git) 為什么第三個項目要改成用svn?(主要考慮到信息的保密性、安全性)
9、 除了從項目中學習、還利用什么資源、最近看的印象較深的博文、
10、 因為扯到湯姆大叔的js系列的設計模式、 單例怎么實現的?閉包?
11、 是否知道或者了解reactJS 和angularJS (談了angularJS的數據雙向綁定)
11 、有沒有要問我的?
結果? 二面形式? 部門?
寶寶總結: 主要圍繞項目談了很多、涉及到很多細節、還扯到了用戶體驗和項目優勢。移動端的屏幕適配問得很詳細。常用的動畫效果實現原理(相當於在考察切圖的基礎)。Css3、h5的新屬性需要了解。Jq動畫的底層實現原理。學習資源。新技術的了解。整體還是圍繞前端展開的,項目聊的還是很開心,css3、jq源碼這一塊還需要惡補。整個面試差不多有50分鍾,設計的面還是挺廣的,盡量往自己熟悉的地方引,不知道的勇敢說出來,否則越聊越沒自信。
騰訊一面
1、 自我介紹
2、 最熟悉的語言 (js)
3、 ajax原理 狀態碼(0-4)
4、 http狀態碼 (1xx-5xx)
5、 網站性能優化 (主要談緩存、問的很細、強緩存、協商緩存的具體實現)
6、 js閉包 作用域
7、 js的內存回收機制
8、 除了jq 還接觸過什么框架
9、 協議環節 tcp 3次握手 面向連接 如何斷開 如何實現可靠的傳輸(滑動窗口機制、超時重傳、) udp 無連接 無重傳 tcp與udp的傳輸效率比較 原因。(問到這里懷疑自己是否是在面前端——)
10、 linux 常用命令 創建文件、文件夾
11、 進程和線程的區別
12、 知道哪些排序算法、冒泡、快排的時間復雜度 堆排原理
13、 10億個qq, n個qq 。比較找出重復的? ——(跪了,只能談實現,沒接觸到處理海量數據時該用的算法這些)
14、 做過哪些項目,遇到的問題。(簡單說了兩個,大致說了下動態設置url這個問題。就沒有展開問細節了)
15、 有沒有什么想問我的?
是tst渠道的推薦,還是內推渠道。
什么時候有結果。
企鵝總結:感覺騰訊和阿里偏向的重點大不一樣,面完騰訊會覺得自己不是在面前端。前分鍾還是大概在問前端相關的東西,后面20分鍾的重點在問大學里學的基礎課程、計算機網絡、網絡安全、操作系統、數據結構都各有涉及。項目也沒怎么談,幾句話就掠過了,還以為會向阿里一樣圍繞項目展開詳細問一波,移動端也沒有怎么涉及。很多時候以為會再繼續展開問的地方戛然而止。自己好幾次想繼續說下去又怕這不是面試官想考察想了解的。
總的來說,面試的發揮還不錯,答不上來的確實是自己沒有涉及過或者沒有復習到的。雖然有時緊張,思路會有點亂,但還是不存在本來知道卻答錯了的。阿里的面試整體感覺會很舒服,面試官也相對人性化,按照我的思路在展開在深入。騰訊的面試就然我感覺很蛋疼了。首先會覺得面試的時間相對較短,只有不到30分鍾,然后涉及到了大學學過的基本上所有的專業課程。我想這就是大公司在招人時的區別吧,會看你是否具有繼續發展的潛力,不是單純問面試崗位的相關知識,而是去考察你的專業基礎。我想這應該也和企業文化和企業的發展方向有關吧。看來在面試前對公司和應聘部門的了解還是很必要的。== 現在只能聽天命了,好好准備二面,對基礎知識、新技術、各種框架的底層實現、數據結構、算法、操作系統都該好好復習復習,也沒有什么后悔之前沒有好好學什么的,本來現在更多的學習就是目的性的,而且把時間花在項目上也確實讓我有了不小的收獲。好的,加油吧,小蔣同學!
希望我的面試經歷和總結能給前端的小伙伴們一些幫助。也希望你們可以從中找到大致的學習方向和學習目標。如果能有幸進入二面,我會繼續和大家分享的。路是走出來,即使過程再煎熬,但我們應該始終讓自己的生活充滿光,一起加油奔跑吧!
香樟林工作室 蔣松
二〇一六年三月九日