小伙伴新鮮出爐面試題目總結(jié)(含中大廠,已拿offer)
最近在找工作,現(xiàn)在已經(jīng)接近尾聲了,面了攜程,美團(tuán),京東,比心APP,英語(yǔ)流利說(shuō),百度,攜程,新核云,現(xiàn)在寫(xiě)一下面經(jīng),希望最近找工作的你們一路順下去
英語(yǔ)流利說(shuō)
一面
微前端描述下
怎么協(xié)同開(kāi)發(fā)
注意事項(xiàng)
2:場(chǎng)景問(wèn)題
2.1:兩個(gè)請(qǐng)求并行發(fā)送,如果其中一個(gè)請(qǐng)求出錯(cuò),就用默認(rèn)值代替,怎么實(shí)現(xiàn)
2.2:頁(yè)面有兩個(gè)相同的請(qǐng)求怎么復(fù)用
3:react 生命周期
4:react通信
5:跨域通信有哪些
6:http緩存
7:懶加載
8:commonjs 和 es module區(qū)別
9:tree sharking原理
10:?loader?會(huì)?plugins區(qū)別
11:防抖和節(jié)流區(qū)別,大概實(shí)現(xiàn)
12:?了解哪些新技術(shù)
二面
介紹一下項(xiàng)目亮點(diǎn) 介紹一下微前端 說(shuō)一下npm包管理機(jī)制 A插件依賴(lài)D插件版本是1.0.1,B插件依賴(lài)D插件版本是1.0.2,C插件依賴(lài)D插件1.1.0,那么npm i 之后,下載了幾個(gè)版本的D插件 HTTP常見(jiàn)的狀態(tài)碼 ,401 403分別是什么, 常見(jiàn)的請(qǐng)求頭響應(yīng)頭有哪些 說(shuō)一下webpack配置,常用的loader、plugin 場(chǎng)景題目
if(a?==?1)?{
????console.log(a);
}
//?控制臺(tái)會(huì)報(bào)錯(cuò)么
//?如果報(bào)錯(cuò)是什么類(lèi)型的錯(cuò)誤
三面
我面的三面基本沒(méi)有技術(shù)面
介紹項(xiàng)目 你充當(dāng)?shù)慕巧?/section> 你平時(shí)是如何學(xué)習(xí)的 對(duì)自己的規(guī)劃 別人怎么評(píng)價(jià)你的
其實(shí)流利說(shuō)我覺(jué)得挺好的,就是我的工資要低了,具體多少不說(shuō)哈,這幾家公司都是20K以上,流利說(shuō)的hr給我的印象很好,一面的小哥哥聲音也挺好聽(tīng)的,如果沒(méi)有百度的offer就去流利說(shuō)了,真的還很抱歉
攜程
一面
介紹微前端 乾坤框架怎么實(shí)現(xiàn)的沙盒機(jī)制 手寫(xiě)一個(gè)單例模式 手寫(xiě)一個(gè)發(fā)布訂閱模式 手寫(xiě)一個(gè)redux的compose函數(shù) 手寫(xiě)一個(gè)組合繼承 垃圾回收機(jī)制了解么,介紹一下 自定義hooks和函數(shù)有什么區(qū)別
二面
事件循環(huán)輸出順序問(wèn)題 實(shí)現(xiàn)函數(shù)異步請(qǐng)求成功后就返回,失敗后重試max次 前端怎么埋點(diǎn)監(jiān)控 hooks為什么不能寫(xiě)在if 語(yǔ)句里面 useCallback的實(shí)現(xiàn)原理 怎么畫(huà)1px像素線,邏輯像素,物理像素的概念 自己寫(xiě)的mock服務(wù)是怎么實(shí)現(xiàn)的,為什么不在webpack里用相關(guān)插件
三面
三面也是沒(méi)問(wèn)技術(shù)
公司是做什么的,介紹下公司產(chǎn)品 你現(xiàn)在充當(dāng)?shù)膱F(tuán)隊(duì)角色 你現(xiàn)在是一個(gè)管理者了,為什么離職了 將來(lái)的規(guī)劃
攜程面的是一個(gè)新的業(yè)務(wù)線,需要一段時(shí)間的996,但是攜程本身不是996公司了,加班有加班費(fèi),并且攜程面試完之后會(huì)有一個(gè)行測(cè)評(píng)測(cè)和英語(yǔ)口語(yǔ)評(píng)測(cè),必須要過(guò)。
比心APP
一面
介紹下項(xiàng)目 說(shuō)一下微前端實(shí)現(xiàn) 寫(xiě)一個(gè)Promise.all函數(shù) 寫(xiě)一個(gè)發(fā)布訂閱模式 一道setTimeout事件循環(huán)的題目 手寫(xiě)題實(shí)現(xiàn)電話號(hào)碼隔位顯示(3 4 4) 算法題[0, 2, 3, 0, 5, 0, 0]將0全部移動(dòng)到后面去
二面
介紹下項(xiàng)目亮點(diǎn) 說(shuō)一下redux如何使用 redux源碼介紹下 你說(shuō)你angular, vue, react都使用過(guò),說(shuō)一下三者的區(qū)別 了解緩存么 大概講一下 解釋下https 介紹幾個(gè)git常見(jiàn)的操作命令
三面
介紹項(xiàng)目亮點(diǎn) react通信是怎么樣的 react-redux中connect怎么連接組件的 為什么要離職 你最擅長(zhǎng)的是什么
比心APP我覺(jué)得也非常不錯(cuò),都是hr很給力,一面是一個(gè)小姐姐人挺好的,二面是leader人也挺好,其實(shí)比心是先面的,hr一直等到我百度面試完在和我談工資,讓我自己對(duì)比下,說(shuō)實(shí)話非常抱歉
百度
一面
介紹一下微前端
乾坤框架源碼看過(guò)么
寫(xiě)一個(gè)自定義hooks,useDiff
數(shù)組去重方法越多越好
寫(xiě)一個(gè)匹配郵箱的正則
實(shí)現(xiàn)函數(shù)
function?repeat(s,?count)?{}
repeat('s',?3)?//?輸出?‘sss’函數(shù)實(shí)現(xiàn)
?//?正則匹配標(biāo)簽名?輸出div?p?span
?<div>
?????<p>
???????<span>span>???
?????p>
?????<span>
?????span>
?div>
實(shí)現(xiàn)一個(gè)深拷貝
實(shí)現(xiàn)函數(shù)統(tǒng)計(jì)字符串里面出現(xiàn)次數(shù)最多的字符
有做過(guò)什么優(yōu)化么
二面
介紹下微前端
hooks常用的api有哪些
useState,useEffect,useRef,useMemo在存儲(chǔ)數(shù)據(jù)方面有什么區(qū)別
hooks組件怎么向外傳遞方法
寫(xiě)一個(gè)三列等距布局,越多越好
寫(xiě)一個(gè)公共組件需要注意哪些
寫(xiě)一個(gè)表單生成組件
生成一個(gè)完整的組件 表單填入的值,可以返回出去
const?config?=?[
????{
????????type:?'input',
????????name:?'name',
????????key:?'name'
????},
????{
????????type:?'select',
????????name:?'work',
????????key:?'work',
????????options:?[]
????}
]?
你ts用的多么,說(shuō)幾個(gè)高級(jí)用法 介紹下interface和type的區(qū)別
三面
介紹下項(xiàng)目 為什么要重構(gòu)項(xiàng)目 為什么要做微前端 詳細(xì)說(shuō)一下機(jī)器學(xué)習(xí)做的事情 你覺(jué)得AI智能給前端帶來(lái)的變化
百度二面是一位小姐姐,挺可愛(ài)的一位女生,百度的hr也是一位比較萌的小姐姐,對(duì)于平臺(tái)和技術(shù)而言,最終選擇的百度,百度好像react比較看重,其他的幾個(gè)崗位基本也是招react
京東凹凸實(shí)驗(yàn)室
介紹下微前端實(shí)現(xiàn)方式,以及你們是怎么做的
乾坤框架源碼看過(guò)沒(méi)
commonjs 和 es module區(qū)別
1:?//?a.js
?module.exports?=?{};
?exports?=?{
?????name:?'json'
?};
?//?b.js
?const?a?=?require('./a.js');?//?輸出什么2:
//?a.js
module.exports?=?function?a()?{}
//?b.js?
//?在b中用es6?module語(yǔ)法怎么引入介紹下瀏覽器緩存機(jī)制 webpack打包原理是怎么樣的 webpack 插件寫(xiě)過(guò)沒(méi),介紹下原理 webpack5介紹下 看你用過(guò)react介紹下fiber架構(gòu) esbuild知道么介紹下 你用過(guò)vue,現(xiàn)在出了vue3.0介紹下 vue現(xiàn)在出了一個(gè)打包工具vite,介紹下為什么會(huì)比其他的打包工具快
京東凹凸實(shí)驗(yàn)室這家給我感覺(jué)很好,我覺(jué)得這個(gè)部門(mén)基本就是搞研究的,一面完了之后一直沒(méi)消息,問(wèn)了之后就說(shuō)還在評(píng)估,估計(jì)涼了,后面三個(gè)問(wèn)題僅僅是群里面發(fā)了文章,但是只看了一遍沒(méi)深入,掃了個(gè)大概
字節(jié)跳動(dòng)
一面
介紹下項(xiàng)目,微前端實(shí)現(xiàn) 介紹下https加密過(guò)程 redux原理 第三方登錄,如果讓你去設(shè)計(jì),你會(huì)怎么考慮 介紹下瀏覽器和node的事件循環(huán) 做了一道原型鏈輸出問(wèn)題 做了一道setTimeout輸出問(wèn)題 做了一道this.setState輸出問(wèn)題(異步和合并) 實(shí)現(xiàn)一下promise.race 實(shí)現(xiàn)一下task().eat().sleep(2000).eat().sleep(2000)函數(shù) 判斷鏈表有環(huán)但是空間復(fù)雜度是O(1)
二面
介紹下項(xiàng)目 redux用的熟么,介紹一下源碼 connect怎么處理組件的 context會(huì)有什么性能問(wèn)題么 實(shí)現(xiàn)防抖節(jié)流 實(shí)現(xiàn)sum(1)(2, 3)(4)柯里化 實(shí)現(xiàn)一個(gè)非樹(shù)狀結(jié)構(gòu)轉(zhuǎn)樹(shù)狀結(jié)構(gòu)函數(shù) 一個(gè)查找最長(zhǎng)子字符串算法
三面
介紹下項(xiàng)目 微前端實(shí)現(xiàn) 乾坤框架如何做到隔離 實(shí)現(xiàn)一個(gè)String.prototype._trim函數(shù) 實(shí)現(xiàn)一個(gè)reduce 實(shí)現(xiàn)一個(gè)多個(gè)請(qǐng)求,并行和串行的函數(shù)
字節(jié)三面面試官有點(diǎn)嚴(yán)肅,沒(méi)發(fā)揮好,題目雖然都做出來(lái)了,但是花的時(shí)間太長(zhǎng)了,面試官也沒(méi)再問(wèn),最后問(wèn)了我有什么規(guī)劃,我以為過(guò)了沒(méi)想到最后掛了,臨門(mén)一腳有點(diǎn)遺憾,想面試字節(jié)的同學(xué),一定多刷函數(shù)實(shí)現(xiàn),算法(連續(xù)做一個(gè)月),源碼理解
PS:
1:還有一家初創(chuàng)公司叫新核云,感覺(jué)還不錯(cuò),最后也是過(guò)了的,但是沒(méi)有去
2:美團(tuán)一面過(guò)了,因?yàn)橛中枰?qǐng)假,并且晚上有百度面試,就推掉了
最后
我是來(lái)自程序員交流指北的一陣風(fēng),一個(gè)把技術(shù)交流放在首位的前端交流群,群主是一個(gè)全棧萌妹子,有興趣的可以私聊我進(jìn)群
