2022前端面試經歷(鄭州)

語言: CN / TW / HK

面試時間:22年4-5月

總結:都是事後回想的,整理的比較潦草,而且沒有答案

面試base地:鄭州

中國電信整合(過了)

  • vue生命週期
  • webpack打包機制
  • v-if v-show
  • 如何實現一個深拷貝
  • 敏捷開發的思維模式

牧原股份一面((過了,主動放棄二面)

  • 講一下react hooks內部實現原理
  • 微前端中微任務注入許可權如何控制
  • 講一下巨集任務和微任務
  • 講一下為什麼用微前端,qiankun的特性是什麼,有沒有看過single-spa的內部實現方式
  • 需要去南陽出差,接受嗎

數字鄭州一面(過了)

  • 瀏覽器協商快取
  • 事件迴圈 巨集任務 微任務(沒回答好)
  • react父子元件如何通訊,redux通訊機制
  • 父元件如何呼叫子元件方法
  • react生命週期
  • antd from表單自定義元件
  • webpack打包原理
  • webpack 如何分包
  • webpack load plugin區別
  • 輸入URL回車發生了啥(從傳送http開始說)
  • 受控元件和非受控元件
  • 為什麼要使用微前端
  • react context
  • ES6+用過哪些特性
  • 如何解決跨域問題(只講專案中用到的,cors原理及如何配置)
  • promise能取消嗎
  • 如何解決移動端適配問題,rem和vw有啥區別
  • 能接受加班嗎,有沒有遇到壓力特別大的時候

數字鄭州二面(過了)

  • 如何實現一個forEach,forEach單詞迴圈返回的是個什麼
  • 如何使用react hooks實現之前的生命週期
  • 如何實現一個ajaix,講下原理
  • promise內部是如何實現的,geneor函式內部是如何實現的,如何通過gene實現一個async await方法
  • 講講你都加班和出差的看法
  • vue3 有哪些特性
  • 講一下redux的資料運轉及原理,講一下你對redux使用場景的看法
  • css實現動畫vs js來實現動畫
  • 講一下如何實現前端自動化
  • 使用過docker部署嗎

uu跑腿共四面(過了)

  • es6有哪些特性
  • 前端打包工具vite
  • 高階元件平時使用過沒
  • redux 原則, connect
  • 深淺拷貝 如何實現一個深拷貝
  • 從拿到一個大型專案開始,如何做優化
  • 有沒有做過大屏專案
  • 有沒有做過視覺化拖拽生成頁面,可以簡單講下實現流程
  • redux 三大原則
  • 如何解決跨域問題

鴻翼股份一面(過了)

  • css 偽類 偽元素
  • html行內元素和塊級元素
  • 什麼是外邊距合併,如何解決
  • react hooks 相對於class元件的優勢
  • 如何實現一個閉包
  • 講一講js 垃圾回收機制,如何回收

鴻翼股份二面(過了)

  • webpack如何優化包體積
  • webpack 如何優化構建時間
  • 平時你是怎麼學習和進步的,遇到不會的問題怎麼辦
  • 高階元件的使用場景
  • 你未來的發展方向是什麼
  • 拿到一個專案除了webpack外,如何做程式碼層面的優化
  • react 實現非同步載入元件的方式有哪些

位元組跳動一面(過了)

  • 手寫程式碼 實現一個react memo效果,react.meno第二個引數是什麼
  • pureComponent
  • 手寫程式碼實現一個有狀態的倒計時
  • 瀏覽器強快取,cacle-control 有哪些欄位 瀏覽器快取原理
  • 微信原生小程式效能指標
  • 有沒有看過qiankun的底層原理
  • webpack5快取有哪幾種方式
  • 強快取和協商快取的狀態碼是多少
  • HTTP2.0相當於1.X有哪些優勢
  • webpack 是利用什麼機制分包的
  • webpack5 模組聯邦簡單介紹下如何實現

位元組跳動二面(沒過)

  • 自定義一個hooks
  • 實現一個節流函式(然後改成hoos的寫法)
  • 實現一個快排
  • 說說你期望的前端發展方向

中軟國際(電信公司)(過了)

  • webpack dllPlugin 具體如何做配置的
  • react class和hooks 分別是如何實現生命週期的
  • 純函式元件的好處
  • 高階元件
  • react 專案如何做程式碼優化
  • load和plugin有什麼區別,常用的load和plugin有哪些
  • 一個頁面的按鈕許可權如何控制(假如給你一個整個專案的按鈕許可權資料)

XX一面(過了)

  • 巨集任務微任務
  • 為什麼會有跨域問題,如果介面有跨域問題,那介面到服務端了嗎
  • 解釋一下BFC。BFC脫離文件流沒
  • commonjs的模組匯入匯出和ES6的匯入匯出有什麼區別
  • flex用過沒
  • 如何解決移動端適配問題
  • 一個div內嵌一個div margin-top30,2個div相差多少
  • CORS2個請求有什麼區別,能否合併成一個
  • HTTP1.0和HTTP1.1有什麼區別
  • ['fldffd','flrtoss','flodofs’] 求最長相同字元字首
  • forEach如何跳出迴圈
  • 你對自己的未來規劃是什麼

XX二面(過了)

  • 之前遇到最大的困惑和挑戰是什麼
  • 如何做移動端適配
  • 如何做頁面效能優化
  • 如何保證一個專案從開發到上線沒有bug,講講你的思路
  • webpack如何優化包體積和構建速度

XX三面(過了)

  • 做微前端之前是如何考慮的,利用微前端能解決什麼痛點,前期做了哪些調研
  • qiankun配置微應用入口後,entry是如何實現應用的路由的
  • jsx為什麼能在js裡寫html程式碼,最後是怎麼處理和編譯的
  • webpack的編譯和瀏覽器的編譯主要做了哪些事情
  • vue中 html中可以寫指令,如v-model,請問是如何實現的
  • vue中雙向資料繫結是如何實現的
  • react中 狀態的更新是如何觸發檢視渲染的
  • 一個專案做效能優化前,是做如何考慮的,做效能優化有哪些指標能參考,拿到一個專案後,是如何做效能優化的

開源中國一面(過了)

  • less sass平時使用過沒,有哪些特性
  • nodejs用過哪些東西
  • 講一下柵格佈局和flex佈局
  • 如何實現一個換膚功能;(2個不同的css檔案)
  • 如何實現一個導航欄的顯示隱藏(根據解析度)
  • 如何實現一個導航欄變窄
  • class super是幹嘛的
  • class方法和純函式有什麼不一樣
  • ts資料型別用過哪些
  • ts @符合的使用,angular中@是用來實現個什麼東西的
  • ts中的一些沒聽過的知識點(記不起來了)
  • react forwardRef用過沒
  • react hooks 如何實現元件銷燬
  • vue熟悉嗎
  • HTTP快取是如何處理的(伺服器或者ng是如何返回快取欄位的)
  • 三方npm資源連結複用,你們公司一般都放在哪裡
  • 說說複雜資料型別,function是複雜資料型別嗎,如何判定複雜資料型別的型別
  • 專案打包從200M優化到120M這之間做了哪些事情

開源二面(過了)

  • CDN如何做配置,瀏覽器快取及CDN快取策略,CDN基本概念,CDN對應的伺服器宕機了,前端快速讓頁面能正常開啟
  • 移動端適配原理和方案,flex佈局和柵格系統
  • redux是幹嘛的,是否是必須的
  • 拋開三方外掛,如何實現跨頁面通訊,快取有I/O,有沒有其他方案,react context之類
  • 在做效能優化之前,是基於什麼做考慮的,為什麼需要做效能優化
  • 如何從程式碼層面做效能優化,講講你的思路
  • 一般專案從開發到上線,你認為需要具備幾個環境才是合理的
  • git merge 和 git rebase有什麼區別
  • 用react實現一個slect下拉元件,從簡單到負責,通過對props、狀態、事件並運用元件化的思想講一下你的思路
  • ts平時都使用過,在專案中你認為ts的定位是什麼