【搜集】前端面試總結
CVTE面試(一面)
作者:靈活的死胖子
連結:https://www.nowcoder.com/discuss/88897?toCommentId=1514882
來源:牛客網
- 自我介紹
- 介紹項目,以及項目中遇到的難點
- 對閉包的了解,以及哪些地方用過閉包,以及閉包的缺點
- 對跨域了解嗎,jsonp 的限制
- 浏覽器哪些地方用到了異步(這個沒答上來)
- CSS 彈性布局,哪些地方用到過
- position 屬性有哪些值,分别什麼含義
- ES6 用到過嗎,新增了哪些東西,你用到過什麼
- const 和 let 差別,可以改變 const 定義的某個對象的屬性嗎
- 箭頭函數,箭頭函數的特點,應該是 this 的指向
- 因為我說項目中用到 cookie,是以她也問了 cookie 有哪些限制
- 除了 cookie 還有那些東西辨識使用者身份的
- 事件機制
- settimeout 的機制
- 遇到過相容性問題嗎,怎麼處理的
- 項目中有用過建構工具嗎
- 平時怎麼學習前端,最近在看的一本書
CVTE面試(二面)
- 先讓說了一下項目,主要負責的部分,然後有沒有使用什麼新技術 平時的學習途徑,說了有寫部落格,然後問了部落格位址,從什麼時候開始寫之類的。
-
一道楊輝三角形的題
1
1 1
1 2 1
…
輸入 n ,輸出數組
假設輸入 3,輸出數組 [[1],[1,1],[1,2,1]]
CVTE HR面試
作者:靈活的死胖子
連結:https://www.nowcoder.com/discuss/92649
來源:牛客網
- 對自己前兩輪面試打個分
- 做的最成功的一件事
- 有沒有什麼主動争取的東西
- 特别困難的時候
- 家裡的情況
- 影響最大的一個人
- 期望薪資
- 如果一起進去的人薪資比你高你怎麼看
- 業餘有什麼愛好
- 加班怎麼看
- 工作地點怎麼看
- 有沒有 offer
- 特别想去的公司
- 會因為什麼放棄 cvte 的 offer
- 提問
騰訊面試
作者:靈活的死胖子
連結:https://www.nowcoder.com/discuss/89360?type=2&order=0&pos=4&page=0
來源:牛客網
- 自我介紹
- 項目及項目難點
- 跨域的方式( JSOP 和 CORS )還有其他的嗎( 不知道 )
- 你覺得 vue 有哪些特點
- 因為自己是跨專業的是以他問我學過哪些計算機的課程
- 用過 git 是吧( 項目中沒用過,自己維護個人 github 用過 ),在項目怎麼用 git 知道嗎( 就是分支,合并,合并的時候出現沖突怎麼辦,沒答上來 ) 然後問了 a^n 怎麼用小于 O(n) 的算法實作 ( 沒答上來 )
- 假設有這麼一張表,學生姓名,課程,成績,怎麼查出每個學生成績最高的那門課程的成績
-
TCP 和 UDP 的差別 因為說了 tcp
是可靠傳輸,是以他問為什麼是可靠傳輸傳輸,其實就是三次握手,但是當時不知道是因為這個,是以沒答上來 前端性能優化
順豐HR面試
作者:靈活的死胖子
連結:https://www.nowcoder.com/discuss/90658
來源:牛客網
- 自我介紹,說項目比較多,然後讓我聊聊其他方面
- 說了說自己的性格,興趣
- 性格裡面說了自己能吃苦,自制力比較強。讓舉幾個例子
- 因為大學不是這個專業的問了為什麼跨考
- 為什麼選擇前端
- 履歷提到寫部落格,寫部落格的目的
- 期望薪資
- 有沒有想去的公司或者地方
- 有其他 offer 嗎
- 對順豐科技的了解
- 找工作的話最想獲得的是什麼(能力的提升)
順豐科技前端(一面)
作者:靈活的死胖子
連結:https://www.nowcoder.com/discuss/89356?type=2&order=0&pos=5&page=1
來源:牛客網
- 自我介紹
- 項目及項目中用了哪些架構
- 項目中的難點
- 了解 MVVM 嗎,和 MVC 的差別
- 對象和類的差別,舉個現實中的例子
- 你了解的面向對象
- 說一下原型鍊吧
- 閉包的原理
- 資料庫了解嗎( 不了解 )
- css 響應式布局
- 履歷中寫着了解 node 是吧( 用 node 寫過幾個爬蟲,具體的不是太了解 )
- ES6 新增的 set() 和 map() 有什麼差別
- 說一下快排的原理
阿裡一面
作者:靈活的死胖子
連結:https://www.nowcoder.com/discuss/92258?toCommentId=1565498
來源:牛客網
- 你會哪些東西(javascript 對象,原型,閉包)
- js 數組有哪些方法(基本把所有數組方法說了一遍)
- 哪些會改變原數組
- every 和 some 的差別
- 數組去重
- 寫一個函數判斷是否存在循環引用(沒答上來)
- 深拷貝和淺拷貝
- 繼承,原型鍊繼承怎麼實作
- ES6 用過哪些新特性
- 箭頭函數和之前的差別,說了 this,然後提到了閉包,講了一下閉包
- 函數中的 rest 參數可以用别的名字代替嗎(這裡不熟,說了不可以,其實是可以)
- promise 函數了解嗎,如何實作一個 A->B->C 說了 Promise.then,然後又問了如果 事情的個數不知道呢(沒答上來)
- async 和 await 了解嗎,不太了解,隻知道傳回的是 promsie 對象
- 用過 webpack(項目中沒用過,自己了解過)講一下 webpack,有什麼作用,講到 了性能優化,有哪些性能優化的地方,壓縮胡亂代碼,其他沒答上來
- AMD 和 commonjs 怎麼使用,怎麼配置,有哪些好處
多益網絡一面
作者:靈活的死胖子
連結:https://www.nowcoder.com/discuss/96296
來源:牛客網
- 自我介紹
- 項目(項目中問的問題比較多,抓住幾個點來問你為什麼這樣做)
- 事件模型
- 怎麼在事件捕獲階段觸發事件
- 平時有關注一些部落格什麼的嗎,講一個最近看的(講了一下 base64 編解碼的)
- spa 了解嗎,隻知道是單頁面應用程式,但是不是特别了解
- 函數防抖和函數節流(之前看過但忘記了,隻說出了防抖)
- 前端路由的實作了解嗎
- 排序算法,時間複雜度
- 平衡二叉樹
- 網絡七層協定
- 加班的看法
拼多多前端(一面)
作者:靈活的死胖子
連結:https://www.nowcoder.com/discuss/96907
來源:牛客網
- 項目
- vue 的優點
- vue 父子元件通信
- vue 生命周期(并不怎麼了解 vue 啊,隻是用過)
- 用 meta 怎麼實作不從緩存中擷取資源
- 閉包
- ES6 了解什麼
- promise 和 async await
- 事件模型和事件委托
- 箭頭函數 this 指向
- this 綁定(說了預設綁定,隐式綁定,顯式綁定,new 綁定)淺析 Javascript 中 this 的指向 ( 箭頭函數 )
- 函數柯裡化(這裡不是特别會,他講給我聽了)sum(4)()()(3) 結果等于 7 這樣
- 原型鍊
- class
- nodejs 了解什麼(做過幾個小爬蟲)
- 具體用了哪些東西
- webpack 怎麼配置
- babel 怎麼配置
拼多多前端(二面)
作者:靈活的死胖子
連結:https://www.nowcoder.com/discuss/98470
來源:牛客網
- 介紹一下項目,問了一下項目中具體的細節
- 原型鍊,proto 和 prototype 的差別
- 判斷數組的方法 應該有 5 個吧,都說了,然後讓說一下不同,Array.isArray() 沒說出來,其他的都說了,順便說了下 instance 的實作原理(上次被問到不會)
- http 和 https 的差別,說了一下傳輸過程和對稱非對稱加密
- attribute 和 property 的差別
- css 僞類是什麼(沒答出來)
- 常見的布局方式,flex 布局三列等寬,flex:1 的意義
- inline 和 inline-block 的差別
- 正則 ? 的用法有哪些(正向預查和 0 次或一次)?:有使用過嗎,沒有 get 和 post 的差別,說了 post更消耗資源,又問那為什麼不用 get 發送資料(沒答出來)
- cookie 和 localstorage 差別,為什麼不用 localstorage 驗證使用者身份(也沒答上來)
- promise 使用場景有哪些。promise 裡面 return 一個 string,和在 resolve 一個 string的差別,這題也答錯了,說成了 return string 傳回的也是 promise 對象。然後又問在 then 裡面 throw 一個 error,怎麼捕捉,說了第二個參數和 catch,也說錯了,用第二個參數捕捉不到這個 error,讓我面完試試,果然捕捉不到。
- 匿名函數的使用場景,說了回調函數,箭頭函數,或者閉包,然後就沒繼續問了,是答得有問題嗎?
- 前端路由和服務端路由
- 深拷貝和淺拷貝,深拷貝的實作以及應用場景
- jsonp 的原理
猿輔導前端(一面)
作者:靈活的死胖子
連結:https://www.nowcoder.com/discuss/97744
來源:牛客網
function ClassA()
{
this.name = 'classA'
}
const classA = new ClassA ()
ClassA.prototype =
classA.__proto__ =
classA instanceof ClassA
true
false
- new 出來的執行個體 this 指向哪
- 怎麼修改 new 出來的 this 的指向(當時說的 new 出來的指向不能修改)
- 換了個問法,怎麼在構造函數中修改 this 的指向。說了個借用構造函數也沒說對不對
- ClassA 的 prototype 是啥,有啥
- classA 的 proto 是啥
- 原型鍊講一下
- instanceof 什麼時候傳回 true,什麼時候傳回 false
- 怎麼讓 classA instanceof ClassA 傳回 false
- js 裡面異步的方式有哪些
- 寫一個 cb2promise 函數,參數是一個函數,将 getUrl 轉換成 getUrlPromise
// callback (error, data)
function getUrl(callback)
function getUrlPromise(){}
function cb2promise(fn)
const getUrlPromise = cb2promise(getUrl);
getUrlPromise.then(data=>{}).catch(err=>{})
// 寫一個函數,将傳進去的數組按深度展開
list:[1,2,[3,4],[5,6,[7,8],9],10,11]
// depth 等于 1 時輸出
depth = 1 :[1,2,3,4,5,6,[7,8],9,10,11]
// depth 等于 2 時輸出
depth = 2 :[1,2,3,4,5,6,7,8,9,10,11]
function flattern(list,depth){
}
- 對架構有了解嗎,對 css3 有了解嗎,移動端适配講了一下。平時除了看書還有哪些學習途徑
老虎證券
作者:靈活的死胖子
連結:https://www.nowcoder.com/discuss/99056
來源:牛客網
- position 有哪些屬性,分别有哪些意思
- 清單有哪些
- form 送出表單的形式有哪些
- 盒模型(标準盒模型和怪異盒模型)怪異盒模型的觸發條件
- bfc 及觸發條件
- 高度塌陷及解決方案
- input 怎麼擷取 value
- css 的權重
- js 基本資料類型,說了 symbol 但是問是啥就不清楚了
- typeof 傳回值
- let const var 差別,這裡又問了 typeof 沒定義的會報錯嗎(不會,undefined)那 typeof let 定義的呢,提到了暫時性死區,由于沒試過是以說覺得因為暫時性死區應該會報錯(剛試了一下說對了)
- es6 的箭頭函數,主要講了一下 this 的綁定
- http get 和 post 差別,一個擷取,一個發送,get 請求能被緩存,儲存為書簽,有長度限制
- 性能優化的方案(基本的沒說)
- 說了一個文檔碎片
- dns 預解析,哪些方式
- 然後他問到了 js 放在哪,問了下原因
- 圖檔懶加載,怎麼判斷什麼時候加載,說了一個 offsettop 好像不對,不過說具體思路沒問題
- dns 了解嗎。。。不是特别了解
- cdn 知道嗎,怎麼判斷要去哪裡擷取(他應該覺得問的太深了,是以自己也說了等以後用到再說)
- 跨域,同源政策講了一下,jsonp 的具體實作。假設 a 網站請求 b 網站的一個 js,這個 js 中請求了 b 網站的内容算跨域嗎。
- 重繪和回流,一個 absolute 的 div 在 js 中,将 left 從 1 變為 100 會觸發嗎,說了應該會,一閃一閃,答錯了,讓我回去試一下,試了一下是直接閃到 100 的位置。
- xss 攻擊了解嗎,防禦方式有哪些(浏覽器自帶防禦,特殊字元轉義,哪些特殊字元,黑白名單,csp)
網易考拉前端(一面、二面)
作者:靈活的死胖子
連結:https://www.nowcoder.com/discuss/99069
來源:牛客網
一面:
- 因為提到了 weex 是以問了點 weex 的問題就不說了
- 然後就是封裝一個 url promise
function(url,option){ // option裡面的内容是自定義的,說是你可以自己定義
var promise = new Promise({
var xhr = new XMLHttpRequest();
xhr.open(option.method,url,false);
xhr.onreadystatechange = handler;
xhr.setRequestHeader(option.Header,option.Value);
if(option.method == 'get'){ // 寫到這裡讓别寫了,說下思路
xhr.send(null);
}else{
xhr.send(option.data);
}
function handler(){
if(this.readyState === 4){
if(this.status >= 200 && this.status < 300 || this.status == 304){
resolve(this.responseText);
}else{
reject(New Error(this.statusText))
}
}
}
})
return promise;
}
- 防抖和節流,簡單實作
// 防抖
function debounce(func,wait){
var timeout; return ()=>{ var self = this;
var args = arguments;
if(timeout) clearTimeout(timeout);
timeout = setTimeout(()=>{
func.apply(self,args);
},wait)
} }
// 節流
function throttle(func,wait){
var timeout;
return ()=>{
var self = this;
var args = arguments;
if(!timeout){
timeout = setTimeout(()=>{
timeout = null;
func.apply(self,args)
},wait)
}
}
}
-
一個場景題,兩欄布局左邊定寬,裡面的内容居中,右邊自适應,然後右邊是一個類似購物車一樣的東西,可以随意添加删除
怎麼實作布局,說了 flex,居中有 justify-content,還有一個 align 什麼的(align-items)當時忘了。
flex 1 的意思
然後右邊怎麼做,事件代理,怎麼知道是哪個觸發,有個 target
- 代碼裡面的性能優化,說了個文檔碎片和利用 requestAnimationFrame 實作延遲加載
- 跨域,jsonp 的實作原理
- 數組的周遊方法,reduce 使用場景,這裡舉了一個自己不是很熟的例子,沒圓好
- $emit 用過嗎(沒有。。。)
- 強緩存和協商緩存
二面:
- 子產品化的東西了解哪些
- AMD CMD commonjs es6 子產品化的差別,CMD 和 ES6 的子產品化沒怎麼了解
- 說下 ES6 的 Map,Set,Promise,Class。說下 Map 和對象的差別,為啥有了對象還要 Map(沒答好)
- 寫過動畫嗎(沒有)
- webwoker 的作用
- 函數柯裡化
- 防抖和節流及應用場景
- 怎麼實作一個 tab 吸頂。說了擷取位置,根據位置改變 css。
- 怎麼用原生 js 添加類,.className,setAttribute
美團外賣前端(一面)
作者:靈活的死胖子
連結:https://www.nowcoder.com/discuss/99519
來源:牛客網
- 簡單自我介紹
- 學前端多長時間,平時怎麼學的
- html 語義化,對語義化的了解,有哪些好處,哪些标簽,什麼用,提了 seo
- html 盒模型,怪異盒模型和标準盒模型的應用場景
- css 不定寬高垂直居中(就說了兩個)定寬高呢
- array 方法有哪些,分成兩類的話怎麼分
-
兩個數組比較,判斷是否有相同元素。說了一個 set,一個 obj
假設裡面有對象,隻要對象屬性相同就算相同該怎麼做,說了一個 JSON.stringify 轉換為字元串,不過好像不是他要的答案,不知道還有更好的方式嗎
- 數組的方法有哪些,讓你分兩類怎麼分,是否改變原數組
- 深拷貝和淺拷貝,深拷貝有哪些原生的方法嗎,沒有。有 JSON 的序列化和反序列化,遞歸兩種。object.assign 不是嗎(object.assign 是淺拷貝)
- JSON 序列化的缺點(不能複制函數,正則,date 這些對象,還有循環引用的問題)
-
設計外賣的購物車,有哪些功能。如果外賣份數不夠了該怎麼做。(請求背景資料時儲存下來,然後選擇的時候判斷,大于 disabled)
還有嗎(說了一個用節流擷取資料判斷)然後問了他是正常開發中是怎麼解決的,就是上面說的那樣
- 使用者點外賣的份數怎麼和背景通信,一開始了解錯了,說送出的時候才通信,然後他說使用者萬一中斷了再進了怎麼擷取,說了 localStorage,然後問了下為什麼不用 cookie
- 前端需要哪些技能,了解哪些東西。提到了 node,問了下 node 在前端的用處,commonjs 和服務端渲染(隻是知道有這麼個東西)
- 設計模式(履歷上的)說一下訂閱者模式
- git (履歷上的)怎麼删除一個遠端分支
美團外賣前端(二面)
作者:靈活的死胖子
連結:https://www.nowcoder.com/discuss/99736
來源:牛客網
- 自我介紹
-
設計一個證券清單,有證券号,證券名,價格,按鈕,點選按鈕顯示價格(提到了事件委托,target)
事件委托和 onclick 的差別
tagegt 有哪些對象
- getElementsByClassName 和 querySelectorAll 的差別,說了一個傳的選擇器,一個字元串,然後問傳回值呢,沒有答上來,查了一下一個傳回的是 Static Node List,一個傳回的是 Live Node List。
- 如果使用者瘋狂點選送出按鈕怎麼辦(點選以後禁用或者事件節流)
-
如果使用者用腳本點選呢(驗證碼等一系列驗證使用者身份的東西)
考慮所有的情況完整的說一遍
用什麼請求擷取(get)
- 輸入 url 到顯示的過程
- 為啥 js 放在 body 最後(阻塞渲染)
- cookie 和 localstorage 的差別
- 一個場景:雲筆記,使用者手機端,pc 端,pad 端分别同步了,然後 pc 端,pad 端斷網,分别修改,然後一個先聯網一個後聯網,沖突怎麼處理。(提示從資料結構考慮,感覺可能用棧處理好一點,然後又問設計哪幾張表,分别有哪些字段,這個真不會,然後說自己可能不太清楚)
- es6 箭頭函數
- 平時用美團的産品嗎,說一下對美團的看法
位元組跳動前端面試(一面)
來源:CSDN
原文:https://blog.csdn.net/zhang6223284/article/details/87926458
版權聲明:本文為部落客原創文章,轉載請附上博文連結!
- 項目相關
- 跨域方式
- 安全相關 XSS 及解決方案
- compose 函數實作
- koa 中間件機制
- node 爬蟲過程(履歷)
- react 和 vue 差別
- 虛拟 dom
- https 連接配接過程
- react 性能優化
- node Event 實作(釋出訂閱實作)
- 寫一個函數,實作
['a','0'],['b','1'],['c','2']] => ['abc','ab2','a1c','a12','0bc','0b2','01c','012'']
- node 事件循環機制
- commonjs 及 ES6 Module 的差別
位元組跳動前端面試(二面、三面)
作者:[Object object]
來源:CSDN
原文:https://blog.csdn.net/zhang6223284/article/details/88188612
版權聲明:本文為部落客原創文章,轉載請附上博文連結!
二面
-
對函數式程式設計了解說一下 純函數,偏應用,柯裡化,compose 分别是什麼
寫一下柯裡化
- apply,call,bind 的差別
- 一段代碼, 為什麼 3 不列印(這裡說錯了,應該是列印的),1 最後列印
setTimeout(function() {
console.log(1)
}, 0);
new Promise(function executor(resolve) {
console.log(2);
for (var i = 0; i < 10000; i++) {
i == 9999 && resolve();
}
console.log(3);
}).then(function() {
console.log(4);
});
console.log(5);
- 說一下事件循環
- BFC 和 IFC 有了解嗎,BFC 特性及條件
- 盒模型
- css 畫一個平行四邊形,translate
- 浏覽器輸入 url 到渲染
- 緩存
- 狀态碼了解哪些,301 和 302 差別
- option 方法知道嗎
- 排序算法,事件複雜度,歸并,快排,堆排的應用場景
- CSRF 原理及防禦
- ES6 用過哪些
- 最近收獲較大的一篇文章及收獲
- 設計消息通知,比如點贊,評論這些通知
三面
- 順時針列印矩陣 (如果沒過肯定就是因為這題,面試官都快把答案說出來了我還是沒做出來)
- http 和 https 差別及建立連接配接的過程
- instanceof 原理(代碼)
- 尋找二叉樹中路徑是否存在某條值等給定值的路徑,看我算法比較差就讓我說了思路
- 自己寫的爬蟲裡面的一些細節及如何處理反爬
- 最有成就感的一件事
快手前端面試(一面、二面)
作者:靈活的死胖子
連結:https://www.nowcoder.com/discuss/101914
來源:牛客網
一面
- CSS3 選擇器有哪些(不太了解)
- 那你了解的選擇器有哪些(僞類僞元素,兄弟,子元素,後代)怎麼寫(h1 h2,h1>h2)
- CSS 兩欄布局(float table flex)兩列等高布局
- 浏覽器渲染的過程(html 建構 dom,css 建構 cssom,這兩個建構 render tree,渲染)
- 怎麼判斷一個檔案是 html(content-type? 有哪些值 json JavaScript,其他的不太了解)
- http 緩存(強緩存和協商緩存,中間有些自己了解的問題,面試官指出來了)
- 301 和 302 狀态碼
- js 基本資料類型
- typeof 的值有哪些
- 還有哪些判斷類型的 api (instanceof Array.isArray constructor Object.prototype.toString.call)
- bfc 的特性(說了塊和靠邊)
-
科學計數法,将 24315436 轉換成 24,315,436
之前看過這個的正則就用正則寫了
function change(num){
var str = num + "";
str.replace(/\B(?=((\d{3})+)$)/g,',');
// str.replace(/\B(?=(\d{3}+)$)/g,','); 當時是這麼寫的,少加了個括号,沒改完他就說思路是對的
return str;
}
- ?= 的作用(正向預檢)
// 寫出一個數組展開函數, 如輸入:[1,[2,[3,4,2],2],5,[6]], 則輸出:[1,2,3,4,2,2,5,6]
// 因為和深度無關,是以說最簡單可以這樣
function flatten(arr){
var res = arr.join().split(',');
res = res.map( ele => +ele)
return res;
}
// 還有嗎,遞歸,寫一下
function flatten(arr){
var array = [];
arr.forEach(ele => {
if(Array.isArray(ele)){
array.push(...flatten(ele));
} else {
array.push(ele);
}
})
return array;
}
- let var 差別(var 存在變量提升,let 塊級作用域,暫時性死區,let 可以重複定義嗎,不可以)
- 事件模型及事件委托
- 寫一下深拷貝(這個就不寫了,網上有)還有哪些方式(JSON 序列化)還有嗎(我知道的就這兩種,還有其他的嗎)你的答案是對的,但是想看看你知識的廣度
- 軟體工程方面看過哪些書(進階軟體工程,人月神話看過嗎,不清楚)
- 設計模式(單例和裝飾者講一下,單例模式用處,AOP 知道嗎,不太了解,好像是 before 函數和 after 函數)
-
排序算法時間最優(nlogn 的吧,哪些?快排,堆排,歸并)
快排最壞 n2,什麼情況下,基本有序
二面
-
實作一個函數 findLastIndex(), 傳回指定數在“有序”數組中最後一次出現的位置findLastIndex([1,2,3,3,3,4,5], 3), 傳回 4
// 剛開始寫的有點問題,沒有判斷全部相等的情況,後面提醒寫上了,寫的比較粗糙,如果有更好的可以分享一下。
function findLastIndex(arr,num){
var mid,left,right,pos = -1;
mid = Math.floor(arr.length/2);
left = 0;
right = arr.length - 1;
if(arr[left] != arr[right]){
while(Math.abs(left - right)!= 1){
if(arr[mid] === num){
pos = mid;
left = mid;
mid = Math.floor((left + right)/2);
}else if(arr[mid] > num){
right = mid;
mid = Math.floor((right + left)/2);
}else if( arr[mid] < num){
left = mid;
mid = Math.floor((left + right)/2);
}
}
}else{
pos = arr.length - 1;
}
return pos;
}
- 請實作一個函數,功能為合并兩個升序數組為一個升序數組
-
instanceof 實作原理
其他還有哪些方式判斷,跟一面差不多
- 工程化的東西有用過嗎(自己有學過,然後讓講一下過程,講的不好,可以說很差)
- 子產品化(ES6 Module AMD CommonJS 差別)import 和 require 差別(一個值的拷貝,一個值的引用,還有嗎,不清楚)
- 事件綁定哪些(onclick addeventlistener 還有 html 頁面裡面 onclick)dom0 級和 dom2 級事件有哪些(一開始了解錯了,後面提醒是其實就是 onclick 和addeventlistener 的差別)什麼情況下用到事件委托
- css 移動端适配有哪些(viewport,media query,rem)
- 移動端有哪些機關(px,rem)還有嗎(em,好像不适合移動端,而且他是疊加計算的)
- 那 em 和 rem 是什麼,rem 就是 :root { font-size: 16px },em 根據父元素的 font-size。預設值多少 16px;
小米前端面試(一面)
作者:靈活的死胖子
連結:https://www.nowcoder.com/discuss/109130
來源:牛客網
- https 具體的傳輸過程,其實不是問題,他接觸的不太多,是以讓我講一下
- dns 解析過程,也是接觸的不太多,讓講一下
- 緩存,expire 和 cache-control 差別(都是用的系統時間,但是一個用的絕對時間可以設定,後者用的相對時間)
- 跨域,主要讓講了一下 jsonp
- html 語義化的了解
- 引入 css 有哪幾種方式
- css 的機關有哪些,你常用的有哪些
- css 優先級
- bfc 特點,建立方式
- js 原型鍊
- js 解包拆包,就是字元串調用 String 對象方法的過程,一開始沒了解,後面才懂
- js 類型轉換,比如 object 和 string 做加法運算