2018年, 個人前端面試覆盤

這篇文章簡單總結下2018年內個人一些前端面試經歷, 在這簡單分享一下,但願對你們有所啓發。html


樓主在深圳,畢業兩年。面的主要是深圳的幾家公司。前端

包括: 騰訊螞蟻金服LazadaShopee, 有贊 等 。python

樓主在準備面試前, 想着複習一下, 可是前端的範圍實在太大, 後來決定找兩個肉雞公司試一下水, 面試以後, 大概內心有個底。react

最後樓主也拿到了 阿里, Shopee 等幾個不錯的 offer.面試

下面就根據上面幾家大廠的面試狀況,和本身蒐集到的一些信息,總結分享給你們。算法


自我介紹

簡單介紹一下就好,適可而止。 面試官就是想看看簡歷先,讓你先說一下子。segmentfault


技術一面

一面主要考察基礎, 有些會有技術筆試, 好比騰訊Shopee跨域

Shopee 有現場的編碼題, 難度不大, 要注意細節。promise

騰訊的技術筆試很是基礎,兩張紙,通常二十分鐘就作完了,主要考察一些js基礎,包括但不限於:瀏覽器

  • CSS

    • 盒子模型
    • BFC,Flex
  • 變量類型

    • JS 的數據類型分類和判斷
    • 值類型和引用類型
  • 原型與原型鏈

    • 原型和原型鏈定義
    • 繼承
  • 做用域和閉包

    • 執行上下文
    • this
    • 閉包
  • 性能問題

    • 好比爲何要用事件委託,原理是上面
    • 爲何Dom 操做就慢了, 解釋一下
  • 看程序寫輸出
  • 框架相關

    • 簡歷上沒寫就不問, 寫了你要答出個因此然, 原理什麼的要清楚, 僅僅會用API是不行的。

都是一些很基礎的考察, 可是若是寫錯太多, 也很容易就涼了。

通常是根據你作題的狀況, 和你說的一些,針對性的提問, 懂套路的同窗能夠在這一步上,準備一些關鍵詞, 並作好準備工做。

幾乎沒遇到問框架的, 可是基礎的原理是要懂的。

一些發散性問題

  • 事件循環, Promise, setTimeout/setInterval, React setState 是如何實現的, 原理等。
  • Vue defineReactive 方法是如何實現全局狀態更新的, 依賴是如何收集的。
  • 語言的詞法分析和語法分析 和 瀏覽器的html parse 有什麼區別, 瀏覽器具體是如何解析的, 爲何標籤不閉合瀏覽器也能正常處理, 能怎麼實現,
  • C++ 裏沒有settimeout, 既然沒有, 要實現的話,用線程如何實現。
  • Html5 新特性
  • requestAnimationFrame 是作什麼的, 若是寫個 Node.js 的C++ 擴展, 怎麼去優化requestAnimationFrame ?
  • Dns 具體是如何解析的?
  • 1 有沒有 toString, Number(1) 有沒有, '1' 有沒有, 爲何
  • react diff
  • 虛擬DOM
  • react 新舊生命週期
  • 爲啥有新生命週期 , 這兩個能夠參考個人另外一篇文章中,關於 Fiber 和生命週期的介紹
  • 事件傳播
  • Event loop
  • Obj getter setter

技術二面

一面完了以後, 會有相應的評價, 二面面試官會針對性的考察。

騰訊的面試官就很喜歡問 HTTP(1.x, 2.0, HTTPS), 安全瀏覽器緩存 方面的問題, 計算機基礎,可是要懂爲何

好比:

  • HTTP 有什麼缺點
  • HTTP2 有什麼好處
  • HTTPS 有什麼好處, 有什麼缺點,爲何。
  • TCP, UDP 的區別
  • 爲何說HTTPS 是安全的, 解釋一下加密過程(就非對稱加密, 密鑰交換那一套)。
  • 三次握手的過程,爲何握手三次, 爲何揮手四次
  • 安全相關(XSS & CSRF) (高頻)
  • 瀏覽器緩存策略(高頻
  • 緩存頭相關
  • 瀏覽器 Cookie 相關。
  • 常見的跨域問題及解決方案
  • 常見的安全問題(csrf,點擊劫持, 等等)
  • 輸入URL 到頁面展現發生了什麼(超高頻
  • 性能優化策略(結合上一條, 高頻)。
  • 基礎的數據結構和算法(好比快排,merge sort, N sum, Top N 等, 手寫代碼)
  • 事件循環原理, 看題寫輸出, 解釋一下。
  • 一些經常使用的方法, 好比debounce, throttle, new, create, bind 的實現。
  • promise, 異步的處理。
  • 基礎的算法和數據結構(Tree, BFS, DFS)

技術三面(騰訊交叉面)

通常都是沒有三面的, 騰訊纔有, 具體的套路和前面差很少。 前面兩輪你都能的話, 這個就不用怕, 覆盤下前面的面試狀況, 準備好再去, 有備無患, 就穩。

樓主的遇到的問題大概是:

- 簡單自我介紹
- 問你作的項目
- 遇到什麼問題
- 排查問題的方法
- Https 的優點
- Https 鏈接的過程(證書, 非對稱加密的過程,加密算法等)

總監面

通常到了這裏就問題不大了, 固然也有翻車的。 這一步主要就是看:

  • 問項目

    • 作了什麼
    • 哪些地方比較出彩, 有什麼成果
    • 這裏我建議實現畫個思惟導圖來梳理, 有計劃的突出重點, 本身作的好的,多作準備。
  • 看你的溝通能力
  • 有些會問你一些智力題,也有人回問數學題(好比矩陣乘法)等, 考察是否聰明.
  • 會python 嗎?(騰訊)
  • 簡述Https 鏈接的過程(仍是非對稱加密那一套的流程)(騰訊)

這一步, 總監以爲你OK, 就會放你到HR。


HR 面

這一步, 若是是正常的HR, 會問你:

  • 過去的一些經歷,作過啥
  • 爲何離職 (權衡穩定性)
  • 對工資的指望

    • 這一步不要虛, 畢竟你都走到這了, 怕啥。這裏談錢不傷感情千萬不要

      • 不要急於出價

        • 能夠先套路一波
      • 給你多少就要多少

        • 一旦你說出一個薪酬範圍,本身就不能增長薪酬了
      • 談一次被打擊一次,最後愈來愈沒有底氣。

        • 自信一些, 此條面對阿里的HR時, 請自行斟酌。
    • 也不要漫天要價, 本身值多少錢, 內心(能沒個B數?)要有點數, 不知道的,要去脈脈上問下。能夠適當加多點:

      • 一方面是留點砍價的空間
      • 另外一方面, 萬一HR就答應了呢, 那不就美滋滋。
      • 對於已經談攏的薪酬待遇,必定要 HR 以發郵件 offer 的形式來確認。
      • 你前面拿的一些肉雞公司的offer 能夠做爲加價的籌碼, 不要扔了。

補充

  • 持續學習

    • 面試官還會看你平時的積累, 好比技術博客有沒有常更新, 寫的都是啥,持續學習很重要。
  • 關注下產品

    • 前端是有義務參與產品的設計的。
  • 關注下業務

    • 阿里的leader 會考察你對產品和業務的瞭解狀況。
    • 技術特別牛逼的,自行斟酌。
    • 要有某個突出的點(或技術, 或產品, 或對業務的理解)。

最後

大概就是這些吧, 有須要面試的朋友能夠參考一下,文中的題目, 答案我還在整理, 後面會慢慢寫出來。 但願對能給有須要的朋友帶來一些幫助 :)

END.

若是以爲內容有幫助能夠關注下個人公衆號 「 前端e進階 」,一塊兒學習成長

clipboard.png

相關文章
相關標籤/搜索