最近開始陸陸續續面一些公司,前期對自我認知有點問題,也沒想到今年形勢如此嚴峻,在這裏記錄下最近遭遇的面試題。css
1、混沌大學vue
徹底沒準備就去面了,一面沒什麼問題,目測二面涼了,問題有:面試
一、http 緩存算法
二、獲取 url 參數值的方法跨域
三、移動端適配數組
四、flex 佈局瀏覽器
2、蝦皮緩存
基礎不行,因此涼涼。。。性能優化
一、 行內元素和塊級元素的區別,對行內元素設置寬高有用嗎,爲何對 img 標籤起做用,對行內元素設置邊距有效嗎閉包
二、你知道什麼是 BFC 嗎
三、說說你對盒模型的理解
四、對閉包的理解,對閉包的應用,閉包有什麼缺點
五、對 http 緩存的理解
六、跨域知道嗎
七、對 xss, csrf 的理解
八、看代碼,說答案,具體考察的是 this 指向,let 和 var 的區別
九、eventloop, 宏任務,微任務
十、vue 數據綁定原理
十一、vue diff 算法原理
十二、vue 虛擬 DOM 的做用,key 的做用,若是用 index 作 key 有什麼問題
1三、vue 組件間通訊的方式
1四、瞭解 http2 嗎
3、平安
一面:
一、http 三次握手四次揮手
二、對 xss, csrf 的理解
三、跨域的幾種方式
四、閉包,閉包的應用
五、requestFrameAnimation 和 setTimeout 的區別
二面:
面了以後以爲仍是不要在簡歷上寫會 vue 了。。。So sad ...
一、vue 雙向綁定原理
二、vue diff 原理,若是有個節點數據發生了變化,vue 是怎麼迅速找到對應的節點的
三、v-model 是怎麼封裝的
四、怎麼封裝個組件,把 v-model 暴露出去
五、鑑於前面的都沒說清楚,終於問了個垂直居中
六、怎麼避免 css 衝突
七、若是在 ant-design vue 裏,要修改某個組件的樣式,怎麼修改,答在對應標籤上加個 class, 問這樣有什麼問題
八、若是有十個元素要修改樣式,怎麼避免屢次迴流
九、差點忘了,vue 怎麼進行性能優化的
4、快手:
一、代碼以下:
var a = {x:1}; var b = a; a.x = a = {n:1}; console.log(a); console.log(b)
問題:怎麼賦值的,基本數據類型和複雜數據類型的不一樣,typeof 能正確判斷數據類型嗎,怎麼正確判斷數據類型
二、原型鏈
三、代碼以下:
console.log(b) let b = 1 var c = function() {console.log(1)} function c() {console.log(2)} c()
問題:let 和 var 的區別,函數式聲明和變量式聲明的區別,變量式聲明的缺陷
四、eventloop, 同步異步,微任務宏任務
五、reflow repaint
六、瀏覽器渲染機制
七、http content-type 有哪幾種,有什麼區別
八、若是本身寫個轉發中間價,思路是什麼
九、打亂數組,怎麼保證每一個元素出現的概率是平均的(洗牌算法)
十、差點忘了,什麼是 BFC、IFC、FFC
十一、移動端長度單位
總體感受須要基礎很牢固,只是背下答案是沒用的,須要真正理解