經過了阿里六輪面試,順利拿到Offer啦!


兩周前,學弟通過了阿里六輪面試,順利拿到了 Offer!

負責高德地圖的前端部署。薪資待遇很不錯,30K*15薪。在此之前,他在國營公司干了3 年,這次回到大廠,用他的話說,真的做足了准備!

阿里在互聯網行業中的實力不用多講。

大平台,優渥的福利待遇,廣闊的成長空間等等優勢都讓它從不缺優秀的求職者!

一開始,學弟和大多數前端求職者一樣,都覺得阿里的門檻太高了:

“二流本科,雙非院校進不了大廠!”

“小公司出身,經驗有限進不了大廠!”

“非科班畢業,技術水平差更進不去大廠!”

......

抱着努力一試的態度,他還是向幾個大廠都投遞了簡歷,也順利的獲得了幾次面試機會。當然,阿里是他最后的選擇。

雙非院校,二本非科班出身,更是在國營企業沉寂了許久,學弟自覺能被錄用最根本的原因,應該就是阿里面試官對他技術的認可。

以下是他面試前所作的准備,想進阿里的同學可以參考:

寫在前頭:面試答題必遵循的四個套路:

1.先說明該考點的明確定義,或者是特性;
2.補充說明具體的應用場景;
3.講自己的看法,觀以及經驗總結;
4.適當的舉一反三,說同類特性或類似的框架,以及更好的解決方案。

一、技術面必要早做的幾個准備

一面:大范圍刷題!必考題以 old school經典題目為主(this、閉包、原型繼承、布局、初級算法、ES Next)針對性題目像框架,小程序等。

二面:根據 JD 准備針對性題目。如:SPA、前后端分離、工程化、安全、語言理解。項目的重點,難點,個人在項目過程里的貢獻和價值。

三面:注重業務 sense。准備技術外的話題,如工作計划,個人規划,可以准備好腹稿,引導考官提問。

二、重要板塊的常考考點

React 核心內容:用 NextJs 完成一個項

具體問題如:

1.Next 是什么為什么需要 Next?
2.如何快速創建 Next 項目架構?
3.如何基於路由系統創建視圖?
4.如何在 Next 中添加樣式?
5.如何實現預渲染
6.如何基於動態路由做到靜態生成
7.如何導出項目
8.如何部署 Next 項目到服務器

Vue-3.0 核心內容:

1.Vue.js 3.0 源碼組織方式
2.不同的構建版本
3.Composition API 設計動機
4.性能提升
5.Vite
6.Composition API
7.生命周期鈎子函數.....

GraphQL 核心內容:

1.GraphQL 入門,Scheme和類型
2.ApolloServer 使用
3.GraphQL 案例

我把一些大廠的常考內容整理成了一份《前端大廠面試寶典》,分了HTML、css、JavaScript、React、Vue、瀏覽器、服務端與網絡、算法等等.....大家有興趣可以看看,覺得有用點贊支持。

HTML

  • html 語義化
  • canvas 相關
  • svg和canvas的區別?
  • html5有哪些新特性?
  • 如何處理HTML5新標簽的瀏覽器兼容問題?
  • 說說 title 和 alt 屬性
  • HTML全局屬性(global attribute)有哪些

CSS

  • 讓一個元素水平垂直居中,到底有多少種方案?
  • 浮動布局的優點?有什么缺點?清除浮動有哪些方式?
  • 使用display:inline-block會產生什么問題?解決方法?
  • 布局題:div垂直居中,左右10px,高度始終為寬度一半
  • 盒模型
  • CSS如何進行品字布局?
  • CSS如何進行聖杯布局
  • CSS如何實現雙飛翼布局?
  • 什么是BFC?
  • 觸發條件
  • BFC渲染規則
  • 應用場景

JavaScript

  • JS原始數據類型有哪些?引用數據類型有哪些?
  • null是對象嗎?為什么?
  • ‘1’.toString()為什么可以調用?
  • 0.1+0.2為什么不等於0.3?
  • 什么是BigInt? 為什么需要BigInt?
  • 如何創建並使用BigInt?
  • typeof 是否能正確判斷類型?
  • instanceof能否判斷基本數據類型?
  • 能不能手動實現一下instanceof的功能?
  • Object.is和===的區別?
  • [] == ![]結果是什么?為什么?
  • JS中類型轉換有哪幾種?
  • == 和 ===有什么區別?
  • 對象轉原始類型是根據什么流程運行的?
  • 如何讓if(a == 1 && a == 2)條件成立?
  • 什么是閉包?
  • 閉包產生的原因?
  • 閉包有哪些表現形式?
  • 如何解決下面的循環輸出問題?
  • 原型對象和構造函數有何關系?
  • 能不能描述一下原型鏈?
  • JS如何實現繼承?
  • 函數的arguments為什么不是數組?如何轉化成數組?
  • forEach中return有效果嗎?如何中斷forEach循環?
  • JS判斷數組中是否包含某個值
  • JS中flat—數組扁平化
  • 數組中的高階函數
  • 能不能實現數組map方法 ?
  • 能不能實現數組reduce方法 ?
  • 能不能寫一個完整的深拷貝?
  • 數據是如何存儲的?
  • V8 引擎如何進行垃圾內存的回收?
  • 描述一下 V8 執行一段JS代碼的過程?
  • 宏任務(MacroTask)引入
  • nodejs 和 瀏覽器關於eventLoop的主要區別
  • nodejs中的異步、非阻塞I/O是如何實現的?
  • JS異步編程有哪些方案?為什么會出現這些方案?
  • 能不能簡單實現一下 node 中回調函數的機制?
  • Promise 憑借什么消滅了回調地獄?
  • Promise 如何實現鏈式調用?
  • 現Promise的 all 和 race
  • 解釋一下async/await的運行機制

HTTP

  • HTTP 報文結構是怎樣的?
  • HTTP有哪些請求方法?
  • GET 和 POST 有什么區別?
  • 如何理解 URI?
  • 如何理解 HTTP 狀態碼?
  • 簡要概括一下 HTTP 的特點?HTTP 有哪些缺點?
  • 對 Accept 系列字段了解多少?
  • 對於定長和不定長的數據,HTTP 是怎么傳輸的?
  • HTTP 如何處理大文件的傳輸?
  • HTTP 中如何處理表單數據的提交?
  • HTTP1.1 如何解決 HTTP 的隊頭阻塞問題?
  • 對 Cookie 了解多少?
  • 如何理解 HTTP 代理?
  • 如何理解 HTTP 緩存及緩存代理?
  • 為什么產生代理緩存?
  • 源服務器的緩存控制
  • 客戶端的緩存控制
  • 什么是跨域?瀏覽器如何攔截響應?如何解決?

TCP協議

  • 能不能說一說 TCP 和 UDP 的區別?
  • 說說 TCP 三次握手的過程?
  • 為什么是三次而不是兩次、四次?
  • 三次握手過程中可以攜帶數據么?
  • 說說 TCP 四次揮手的過程
  • 為什么是四次揮手而不是三次?
  • 介紹一下 TCP 報文頭部的字段
  • 說說 TCP 快速打開的原理(TFO)
  • 說說TCP報文中時間戳的作用?
  • TCP 的超時重傳時間是如何計算的?
  • 說一說 TCP 的流量控制
  • 說說 TCP 的擁塞控制?

瀏覽器

  • 說一說瀏覽器緩存?
  • 說一說瀏覽器的本地存儲?各自優劣如何?
  • 說一說從輸入URL到頁面呈現發生了什么?(網絡)
  • 談談你對重繪和回流的理解
  • 能不能說一說XSS攻擊?
  • HTTPS為什么讓數據傳輸更安全?
  • 能不能實現事件的防抖和節流?
  • 能不能實現圖片懶加載?

Vue

  • 什么是MVVM?
  • mvvm和mvc區別?它和其它框架(jquery)的區別是什么?哪些場景適合?
  • 組件之間的傳值?
  • Vue 雙向綁定原理
  • 描述下 vue 從初始化頁面–修改數據–刷新頁面 UI 的過程?
  • 虛擬 DOM 實現原理
  • Vue 中 key 值的作用?
  • Vue 的生命周期
  • Vue 組件間通信有哪些方式?
  • vue 中怎么重置 data?
  • 組件中寫 name 選項有什么作用?
  • vue-router 有哪些鈎子函數?
  • route 和 router 的區別是什么?
  • 說一下 Vue 和 React 的認識,做一個簡單的對比
  • Vue 的 nextTick 的原理是什么?
  • Vuex 有哪幾種屬性?

數據結構與算法

  • 鏈表
    簡單的反轉鏈表
    區間反轉
    兩個一組翻轉鏈表
    K個一組翻轉鏈表
    如何檢測鏈表形成環?
    如何找到環的起點
    合並兩個有序鏈表
    合並 K 個有序鏈表
    判斷回文鏈表

  • 棧和隊列
    有效括號
    多維數組 flatten
    普通的層次遍歷
    二叉樹的鋸齒形層次遍歷
    二叉樹的右視圖
    完全平方數
    單詞接龍
    優先隊列
    關於堆的說明
    實現一個最大堆
    實現優先隊列
    前 K 個高頻元素
    合並 K 個排序鏈表
    什么是雙端隊列?
    滑動窗口最大值
    棧實現隊列
    隊列實現棧

  • 二叉樹
    前序遍歷 / 中序遍歷 / 后序遍歷
    最大深度 / 最小深度
    對稱二叉樹
    二叉樹的最近公共祖先
    二叉樹的直徑
    二叉樹的所有路徑
    二叉樹的最大路徑和

由於篇幅限制,僅截圖展示部分內容,完整版PDF資料免費分享,只需你點贊支持,點擊此處就可免費領取

學習建議

最好一開始就給自己定一個目標,然后立計划,並且給出一個周期,然后根據實際情況不斷的調整,並且周期性的總結一下學習情況,是否完成了預期的計划,方向有沒有偏移等等。

情況允許的話最好也是找幾個小伙伴抱團,良性競爭,畢竟每天看着別人在不斷的進步還很有壓力的,而且互相之間還可以進行交流討論什么的,也能互相監督和提醒,甚至可以每周輪流一個人分享自己近段時間所學的東西等等。

最后祝大家前程似錦都能找到並入職自己心儀的公司,且工作順利,早日財富自由。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM