一个前端岗位电话面试所带来的问题的思考
這絕對(duì)不是一篇技術(shù)文,如果你不喜歡,也請(qǐng)不要噴,你可以看看都有哪些問(wèn)題,當(dāng)然,在這里你可能得不到問(wèn)題的答案,不懂的你可能需要自己去百度,也可以在下面留言交流,我已經(jīng)聲明了,這不是一篇純技術(shù)文章,不喜勿碰,忽略就是;做文明人,共創(chuàng)一個(gè)和諧的網(wǎng)絡(luò)環(huán)境,謝謝;
一、javascript方面問(wèn)題
1、簡(jiǎn)單介紹項(xiàng)目以及所用到的技術(shù),團(tuán)隊(duì)規(guī)模
這里就不一一細(xì)說(shuō)了,反正就是霹靂拍啦一大堆,然后就介紹完了,介紹完了之后,面試官接下來(lái)問(wèn)的問(wèn)題也基本是根據(jù)我描述項(xiàng)目中所涉及到的技術(shù)去問(wèn)吧,直接看問(wèn)題吧!
2、ajax VS websoket
在websocket沒(méi)有出現(xiàn)的時(shí)期,我們想要在聊天室這種形態(tài)模式下去輪詢(xún)查詢(xún)新的數(shù)據(jù),基本通過(guò)setInterval固定時(shí)間去刷新請(qǐng)求,并發(fā)不大的時(shí)候,還要好點(diǎn),服務(wù)器差不多的都能撐得住,但是并發(fā)一旦大起來(lái),請(qǐng)求一多,好嘛,服務(wù)器數(shù)據(jù)庫(kù)直接蹦;
而websocket這種,只需請(qǐng)求一次,那就是連接服務(wù)器,一旦連接,數(shù)據(jù),服務(wù)器主動(dòng)推送給客戶(hù)端,雖然他對(duì)服務(wù)器一直keep-alive這種狀態(tài),需要消耗服務(wù)器內(nèi)存,但是相對(duì)于ajax無(wú)數(shù)次不應(yīng)的請(qǐng)求來(lái)說(shuō),肯定是大大提高了性能的;
當(dāng)然兩者肯定有優(yōu)點(diǎn)有缺定,畢竟性質(zhì)不一樣,我覺(jué)得大家還是有必要了解一下這兩者區(qū)別的
3、jQuery VS vue
可能很多人覺(jué)得這有什么可比性,其實(shí)我個(gè)人覺(jué)得,還就是jQuery和這類(lèi)mv*框架有比較的價(jià)值,你想想,三大框架(vue、react、angluar)基本都是操作數(shù)據(jù),虛擬DOM,雙向綁定什么的,這三個(gè)框架之間的對(duì)比,大致是實(shí)現(xiàn)的方式去對(duì)比;
但是jQuery,基本是通過(guò)操作DOM,完全不一樣的庫(kù),他們之間兩個(gè)陣營(yíng)當(dāng)然更有可比性; (不喜勿碰,個(gè)人見(jiàn)解)
4、setInterval 時(shí)間是否會(huì)有誤差?產(chǎn)生誤差的原因?其原理是什么?
這個(gè)問(wèn)題,誤差肯定是會(huì)差生的,你想啊,setInterval異步函數(shù),異步執(zhí)行,js被解析的時(shí)候,碰到他,先不解析他,放他在一旁,先去解析同步的,等資源空閑下來(lái)的才去解析他,這樣一來(lái),解析其他代碼肯定需要時(shí)間,這不就有延誤嘛。
然后解析setInterval內(nèi)部函數(shù)不也一樣需要耗時(shí),函數(shù)簡(jiǎn)單些還好寫(xiě),你要是寫(xiě)了一大堆,那乖乖,可能產(chǎn)生的延誤就不是一點(diǎn)點(diǎn)的;
5、閉包
老生常談的問(wèn)題,基本每個(gè)前端不管是初級(jí),中級(jí),高級(jí)或者資深前端都會(huì)被問(wèn)到的問(wèn)題吧; 簡(jiǎn)單點(diǎn)說(shuō)就是一句話:有權(quán)訪問(wèn)另一個(gè)函數(shù)作用域內(nèi)變量的函數(shù)都是閉包; 具體的附上MDN的解釋,我就不做過(guò)多解釋了 MDN地址
6、IE中造成內(nèi)存泄漏情況以及原因
這個(gè)可能在IE,尤其IE8中表現(xiàn)的最明顯,畢竟其他瀏覽器就是會(huì)很卡,但是IE8是直接崩潰,哈,真任性!具體的大家還是去百度吧,當(dāng)然這個(gè)問(wèn)題不僅僅是存在IE瀏覽器中,在各個(gè)瀏覽器中都存在;
7、瀏覽器垃圾回收機(jī)制
相信大部分語(yǔ)言,都有這么個(gè)機(jī)制,不需要在引用的變量之類(lèi)的將會(huì)被回收,不然的一直常駐在內(nèi)存中,那好嘛,瀏覽器遲早被你弄奔潰,閉包里面的就不行了,垃圾回收機(jī)制檢查不到你這個(gè)變量是否被應(yīng)用啊,所以嘛,造成內(nèi)存泄漏了,如果并非必要,大家還是少寫(xiě)點(diǎn)閉包,寫(xiě)了請(qǐng)手動(dòng)刪除一下或者置為空,畢竟咱們的性能能提升就提升嘛,小細(xì)節(jié)解決了隱藏的大部分問(wèn)題不是嗎?
8、雙向數(shù)據(jù)實(shí)現(xiàn)原理
這還是因?yàn)槿罂蚣艿某霈F(xiàn),出現(xiàn)這么個(gè)話題,所以說(shuō),現(xiàn)在的趨勢(shì)就是這樣,你必須去了解,作為一個(gè)前端,你不能停止學(xué)習(xí);否則你必將會(huì)被淘汰,而且很快,有多快?就像16年之前,你可以憑借html css jq,你就可以找到一份能解決溫飽的問(wèn)題了;
但是17年可能就困難很多了,當(dāng)然也不是絕對(duì)的說(shuō),同時(shí)也不是說(shuō)jq已經(jīng)OUT了,我個(gè)人覺(jué)得jq至少在現(xiàn)今還是沒(méi)有任何OUT的,如果作為一個(gè)真正將前端作為未來(lái)職業(yè)的人,JQ是必備的一種技能;
但是在這基礎(chǔ)上,你還要必須學(xué)會(huì)三大框架的至少一種,在中國(guó)的這樣的行情下,可能react和vue更加吃香吧,如果你還沒(méi)有入手三大框架,個(gè)人建議從vue和react中選一個(gè)先學(xué),你只有在環(huán)境中生存了下來(lái),才能有時(shí)間去學(xué)習(xí)更多的東西,做自己想做的事情; 扯遠(yuǎn)了,說(shuō)回雙向數(shù)據(jù)綁定,這個(gè)還是要去理解一下的,至少知道Object.defineProperty()是怎么用的,他是個(gè)什么東西
9、頁(yè)面優(yōu)化
這個(gè)就是平時(shí)我們必須面對(duì)的一個(gè)問(wèn)題,所以大家還是要去多多關(guān)注多多了解,
10、瀏覽器緩存原理
講真,這個(gè)問(wèn)題我沒(méi)有回答的很好,因?yàn)楫吘?#xff0c;那啥,好吧,我么有研究過(guò)這個(gè)問(wèn)題;要是說(shuō)說(shuō)cookie,sessionStorage,localStorage我還能講出來(lái),這個(gè)原理可能真被問(wèn)住了,好吧,我表示自己真的有欠缺的方面;只能自己加加油了
11、虛擬DOM
其實(shí)主要是因?yàn)関ue/react這些框架的出現(xiàn),這個(gè)概念才熱起來(lái),個(gè)人覺(jué)得還是有很多公司會(huì)問(wèn)這類(lèi)問(wèn)題的,大家還是要去了解了解
12、在項(xiàng)目中遇到難題以及解決方式
當(dāng)然也是一頓噼里啪啦,其實(shí)每個(gè)人在項(xiàng)目中多多少少都會(huì)碰到吧,至于解決方式,我就是回答基本自行百度,或者去技術(shù)交流群詢(xún)問(wèn)之類(lèi)的,不知道大家會(huì)怎么回答這樣的問(wèn)題,如果可以,歡迎留言交流
二、css方面問(wèn)題
當(dāng)時(shí)面試官在問(wèn)css問(wèn)題之前,先問(wèn)了一下我會(huì)不會(huì)css,好吧,當(dāng)時(shí)我愣了一下,說(shuō)了句,那是會(huì)的,其實(shí)針對(duì)css并沒(méi)有問(wèn)太多,就兩個(gè)問(wèn)題,請(qǐng)看下面具體問(wèn)題
1、對(duì)盒模型的理解
盒模型主要包括如下幾點(diǎn):margin border padding content;根據(jù)width或者h(yuǎn)eight計(jì)算時(shí)包含的內(nèi)容不同,而被分為以下兩種盒模型
1、IE盒模型(準(zhǔn)確的說(shuō)是IE8以下盒模型),江湖人稱(chēng)怪異盒模型;當(dāng)我們計(jì)算width或者h(yuǎn)eight的時(shí)候,在IE8以下盒模型時(shí),是包括了padding border content三者一起算的
2、IE8及其以上版本瀏覽器盒模型和w3c盒模型,江湖人稱(chēng)標(biāo)準(zhǔn)盒模型;這種盒模型在我們計(jì)算width或者h(yuǎn)eight的時(shí)候,是不包括padding border在內(nèi)的,而是單一計(jì)算content的大小;
2、布局方式
大概包括以下幾種布局方式:
1、彈性布局
2、固定布局
3、流體布局
4、混合布局
5、絕對(duì)定位布局
三、我所要問(wèn)的問(wèn)題
當(dāng)然只是問(wèn)了一下做什么項(xiàng)目、我去主要做什么、技術(shù)棧、加班情況等等這些;當(dāng)然,其實(shí)可能有的人會(huì)問(wèn),為什么沒(méi)有問(wèn)福利,薪資待遇什么的,我個(gè)人是覺(jué)得,這只是電話面試,后面還有很多面,有些問(wèn)題,不是當(dāng)面說(shuō)更好嗎?
四、結(jié)束語(yǔ)
每家公司每個(gè)區(qū)域面試所問(wèn)的問(wèn)題可能都不一樣,如果大家在面試中遇到了什么問(wèn)題,或者覺(jué)得有什么好技術(shù)性面試題,歡迎大家留言交流,也歡迎大家對(duì)以上面試進(jìn)行積極的討論,能回答大家的技術(shù)性問(wèn)題,我一定會(huì)回答,感謝大家的閱讀
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的一个前端岗位电话面试所带来的问题的思考的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 基于 Docker 打造前端持续集成开发
- 下一篇: 前端入行两年--教会了我这些道理