2019大廠前端面試題


 友情連接:

47道HTTP面試題總結  98道vue面試題總結css


 

Motivation

2019寒冬來臨,捲入動盪之中只能又開啓了漫漫求職路。有辛酸,有坎坷,但也有點小幸運。html

Experience

前先後後面試了6家公司,總結一下問題作一個backup。(僅記錄問題,不區分面試輪次)vue

  • 脈脈node

    • 框架react

      • 簡述vue的基本原理
      • vue的生命週期
      • vue與react的不一樣
      • vue父子通訊的方式
      • vuex的原理及理解
      • vue v-model如何實現的,語法糖實際是什麼
      • react 生命週期
      • react context 的理解
      • redux的原理
      • react-redux的原理
      • 如何避免render的觸發
      • 說一下react vnode的diff算法
      • vnode的引入與直接操做原生dom相比,哪個相率更高,爲何
    • 基礎知識webpack

      • 對緩存的理解
      • 對http2的理解
      • 對https的理解
      • 對原型鏈的理解,畫一個經典的原型鏈接圖
      • 對es6瞭解多少
      • 箭頭函數與正常函數有哪些區別
      • class的實現 用原型寫一個繼承
      • ajax axios fetch的區別
      • 如何用promise封裝一個ajax
      • 項目中的難點和亮點

二面送走,說會聯繫也沒聯繫我 > <.(面試體驗和福利仍是挺好的)ios

  • 高德nginx

    • 框架es6

      • React組件的生命週期
      • React父子組件如何通訊的
      • React層級很深的組件如何通訊傳值(Context API)
      • React作了哪些性能優化 PureComponent的實現原理是什麼
      • React setState後都會發生什麼,是否瞭解
      • React 1000個列表節點渲染,給出一個優化方案
      • 是否瞭解React事件機制,若是讓你實現如何來設計
      • Redux的原理及理解
      • react-redux是如何來實現的,connect是否是一個高階函數,原理是什麼
      • react與vue相比,有什麼不一樣
    • 基礎知識web

      • 對緩存的理解,須要什麼設置
      • 對代碼構建上線流程是否瞭解,說一下若是讓你實現的思路
      • 談談對webpack的理解,經常使用哪些plugin,對webpack配置是否瞭解,對項目打包是否作過什麼優化
      • ES6經常使用到哪些,對class的理解,手寫一個對繼承的實現
      • Promise是否瞭解,如何實現一個promise
      • class繼承中子類想使用父類的方法,應該用什麼方式調用(super的意義)
      • 箭頭函數與正常函數的區別
      • css實現border漸變
      • css實現下陰影(氣泡類 帶箭頭的陰影)
      • css對flex的理解
      • 對瀏覽器渲染機制的理解(具體到細節,從渲染樹到paint之間究竟發生了什麼)
      • 純css實現一個高寬比爲1:3的盒子 列舉幾種方式
      • 瀏覽器的架構,bom,dom
  • 馬蜂窩

    • 框架

      • vue的生命週期
      • 組件A下有子組件B、C,那麼3個組件生命週期的調用順序,同級組件mounted觸發必定是先調用先call嗎?同步仍是異步?
      • vue的基本原理
      • vue eventbus的實現
      • vue父子組件的通訊
      • vuex的使用
    • 基礎知識

      • 對https的理解,對稱、非對稱加密在哪部使用
      • css佈局 各類定位的方式
      • css實現水平垂直居中
      • css實現一個旋轉的圓
      • cookie 跨域的處理方案
      • cookie 種在子域下可否攜帶發送到服務端(SSO登陸)
      • 寫一個函數,第一次調用返回0,以後每次調用返回比以前大1
      • 閉包、做用域的理解
      • 用原生xhr發送一個請求
      • 跨域請求能夠攜帶cookie嗎
      • axios與xhr的區別,如何用promise包裝xhr
      • 講講項目中的難點

要吐槽一下。1面好看的小姐姐面完直接告訴我當備胎了,送我出去了= =。。。(不過馬蜂窩的辦公環境是真的挺美的,跟花園同樣)

  • 猿輔導

    • 框架

      • vue的生命週期
      • vue雙向綁定的原理
      • vue父子組件通訊的方式
      • vue eventbus的原理
      • 對vuex的理解
      • 談談對vue和react對比,並從中能學到什麼
      • vue中能夠對對象進行數據監聽,若是對於數組中的某個元素可否監聽,是如何作到的
    • 基礎知識

      • http的頭部有什麼字段,簡要描述(緩存,content-type,cookie等等)
      • cookie跨域服務端須要如何適配(CORS頭)
      • 一個請求跨域是否會抵達服務端
      • 對以前的項目作過什麼優化,講一講
      • 對以前的項目遇到過什麼難點,講一講
      • 對http2有哪些瞭解
      • 對canvas有哪些性能上的優化
      • 對settimeout和對setinterval的理解(涉及代碼題倒計時函數,eventloop的考點)計時是否準確?如何實現較爲準確的計時?
      • 對一個短期併發高的場景須要如何處理(後端設計)(開始答題獲取試卷的場景)
    • 寫代碼

      • 寫一個倒計時函數
      • 寫一個函數,給定一棵樹,輸出這棵樹的深度
      • 寫一個函數,給定一個url和最大深度maxdeep,輸出抓取當前url及其子連接深度範圍內的全部圖片
      • 寫一個函數,給定nodes=[],每個節點擁有id,name,parentid,輸出一個屬性列表的展現(涉及dom操做)
  • 抖音

    • 框架

      • vue數據綁定的實現原理
      • vue computed具體在什麼階段進行的依賴收集,具體的過程詳細描述
      • vuex和redux的差異
    • 基礎知識

      • 跨域的解決辦法
      • 原型鏈的理解,寫一個原型繼承
      • 實現一個sendRequest,有最大請求併發限制
      • EventLoop的理解
      • 瀏覽器渲染觸發在EventLoop的哪一個階段,觸發機制是怎麼樣的
      • https 創建鏈接的過程及通訊 如何劫持,鑑別是否被劫持
      • ES module與cjs的區別
      • Tree shaking的實現原理
      • 給定一個sum 檢驗一棵樹中,是否存在一條路徑和爲sum,輸出該路徑

二面送走,感受到本身在一些問題的深度上還有待加深。

  • 快手

    • 框架

      • 對vuex源碼上如何實現只能mutation更改,而不能直接更改
      • vuex中如何在層層均可以引用$store
      • vuex和redux的差異
    • 基礎知識

      • 筆試題6頁
      • css優先級關係
      • eventloop的前後順序(node內)
      • node中的垃圾收集機制
      • BFC,IFC,FFC的區別
      • a11y是什麼,如何理解
      • prototype的考察
      • TDZ的考察
      • 寫一個數組方法,打亂整個數組順序,而且每一個數字落在各個位置的機率相同
      • one(add(two())) // 3 two(add(one())) // 3 寫出 one() two() add()的實現
      • 實現一個catchPromise 發同一個請求緩存data 在實際網絡層相同url只會發出一個請求
      • 給定 n 個 {x, y, w, h}的盒子 按需排列,左上聚攏(層疊後的max(h)*max(w)最小),求給一個{w,h},輸出放置的位置
      • 從輸入一個url到呈現網頁,都有哪些步驟
      • http keep—alive都解決了哪些問題 keep-alive是從c - nginx創建的仍是直接到服務創建的長鏈接,與websocket有什麼區別與聯繫
      • 給定一個html,輸出其中包含的html標籤數量,能夠用domapi 注意iframe
      • 實現一個NumberStack,實現pop,push,max(n)方法,max(n)返回第n大的數,max(n)須要 O(1)的時間複雜度
      • 實現一個bind函數
      • 跨域的解決辦法,jsonp的實現原理
相關文章
相關標籤/搜索