2016.3.18,星期五。我經歷了我的第一次面試。
不得不說,百度是一個高效的公司,在短短一下午之間我就直接經歷了一面二面,說沒有壓力是假的,還記得在中途等待二面的時候我至少有一小段的時間腦子是卡帶的。
一面之技術面:
說來是慶幸的,無意中得知一面的面試官是我的直系師兄,剛畢業一年,在百度實習並拿到了offer。人很親和,一直叫我不要緊張,可是說完全不緊張那是假的。然而是師兄也並沒有什么用,剛出了電梯到一間會議室,就直接對我說“那我們開始進入正題吧,我要對你做一些知識上的考核”。面試就這樣開始了...
整個面試過程中主要考核的是前端重點的三大技術:HTML、CSS、JS。整個提問過程中也依照這樣的順序依次擴展相關的知識點。(詳細答案贅述,只記下所遇到的問題)
HTML部分:
1.在HTML中所有的元素分為兩大類:塊級元素和行內元素。那么請各舉出幾個例子,並說說塊級元素和行內元素各自的特點以及區別?
2.有用過HTML5的新技術么?舉例說一下
(因為我有說到離線存儲技術相關的:localStorage和sessionStorage,於是就問了下一個問題)
3.說一下localStorage和sessionStorage它們和cookie的區別?
(與cookie的有聊很多,就全部寫在這里)
4.那cookie的作用是干什么的?(因為我的項目里面有用到fetch技術傳輸數據,fetch有一個坑就是“fetch請求默認不帶cookie”)怎樣可以隔離cookie?隔離cookie之后有什么后果?
5.(就一直由cookie聊到了跨域)跨域會有什么后果?(這里面試官一直是引導式的提問,有時還會告訴你從哪些方面思考,感覺這主要考察思維能力和分析問題能力)你說說一般哪些標簽或屬性可以實現跨域?
CSS部分:
1.定位是CSS的一個重要作用,我們來聊一聊定位的相關知識。 ------主要考察的是position的absolute怎么實現,實質是什么
2.給我講一講CSS中的“盒子模型”。
3.說一說display相關的東西。
(這一部分考核了很久,我能記得的就這幾點,但每一點都擴散了很多知識,主要就是看你的布局和對CSS深層的一些理解)
JS部分:(我是偏薄弱的,哎)
1.說一說JS里面的閉包吧,還有原型是怎么回事?(直接敲了代碼,讓我實現一下)
2.你平時在JS里面一般是怎么封裝對象的,思路是什么?
3.知道JS里關於this對象具體怎么用么?
4.JS里面典型的冒泡事件,也就是默認機制,是怎樣的?
5.JS里面“==”和“===”有什么區別?(我回答了這個題之后,面試官說了一句“為什么你們來面試的這個題目普遍答得都不好啊” ,我流淚.......)
6.ajax技術(這個也聊了很久)
7.(因為我的項目用的是JQuery)有沒有看過JQuery的源碼?balabalabala........
其他部分:
1.說說一些常見的兼容性問題吧,怎么解決
2.又聊了一下緩存技術
3.平時都是怎么優化網站的,說一些優化網站的策略以及平時自己的實踐?說一說為什么這樣優化?(很多知識,最好是結合自己實際操作過的講)
(這里由於我沒有說到CDN,面試官就出了一個場景題讓我發散思維,大公司是真的很看重你思考問題的角度和會不會思考的)
感覺列出來沒多少問題,但是每一個問題發散出來的細枝末節很重要,而且面試官一般都會在你的回答里面抓住關鍵詞,然后從關鍵詞延伸出對你自身技能的考核。而且在這個過程中,遇到不會的也不要緊張,跟着面試官的指引方向思考問題,注意,可以發散思考,但是也一定要抓住核心,畢竟如果你說太多無關的,只會問題沒解決,漏洞更多。
