本人2017年畢業(yè)酗宋,從事前端工作1年积仗,去過新華三,罕静康斥扛、大華面試,結(jié)合今天和之前的面試經(jīng)歷丹锹,整理了一些面試題稀颁。因?yàn)楸救藇ue的項(xiàng)目經(jīng)驗(yàn)不是很足,被問到關(guān)于vue的問題也不是很多楣黍。
ps:在h3c被問到的問題自己整理的筆記里面都有匾灶,但是很多答案只有個(gè)印象,不太記得租漂,略微有點(diǎn)桑心阶女。
杭彰樱康的面試不太愉快,就問了在工作中有沒有處理過跨域問題秃踩?自學(xué)vue的時(shí)候有沒有碰到什么問題衬鱼?我說我剛開始準(zhǔn)備學(xué)es6,問我箭頭函數(shù)憔杨?講一下做過的項(xiàng)目鸟赫?后臺(tái)用的是什么語言?就說要找一個(gè)資深的你不太適合就沒了消别。感覺去了一個(gè)假的号自椋康。
去了大華面試寻狂,做了筆試題岁经,筆試題js的內(nèi)容比較多,然后是包含字母和數(shù)字的數(shù)組去重蛇券,三欄布局等缀壤。我去面試的部門比較重視js方面的知識(shí),問了些項(xiàng)目的問題怀读。
建議:盡量把面試官引導(dǎo)到你會(huì)的方面诉位,或者在你會(huì)的方面適當(dāng)在不給自己挖坑的情況下多說點(diǎn)兒,就是展現(xiàn)一下自己菜枷,不要說的過多。一些小公司可能會(huì)更多的針對(duì)你做所的項(xiàng)目去問叁丧,例如項(xiàng)目所用的框架啤誊、項(xiàng)目中遇到的問題和解決方法,或者會(huì)問為什么用這個(gè)框架不用xxx拥娄,我認(rèn)為這個(gè)就是考你框架的優(yōu)缺點(diǎn)蚊锹。
HTML
1.H5語義化:頁面內(nèi)容可以寫出頭部、尾部稚瘾、導(dǎo)航牡昆、菜單、主題內(nèi)容有圖文說明
2.H5新增的一些特性(例如衍生出的問題:H5新增的存儲(chǔ)方式和cookie做比較)
CSS
1.清浮動(dòng)的方法
2.“固比固”布局摊欠,我自己整理的有5種丢烘,可能會(huì)寫手寫代碼(我簡(jiǎn)書里有整理)
3.css盒模型:ie模型和標(biāo)準(zhǔn)模型區(qū)別?如何設(shè)置這兩種模型些椒?
4.邊距重疊解決方案(BFC)
5.垂直居中和左右居中的方法播瞳,說的越多越好(我的簡(jiǎn)書大概歸納了一下)
6.linear-gradient,box-shadom免糕,文本超過一行省略赢乓,動(dòng)畫animation(動(dòng)畫)忧侧、transition(過渡)、transform(變形)牌芋、translate(移動(dòng))等筆試會(huì)手寫代碼
7.CSS實(shí)現(xiàn)寬度自適應(yīng)100%蚓炬,寬高16:9的比例的矩形。
DOM事件流
1.基本概念:事件級(jí)別
2.DOM事件模型:冒泡和捕獲(了解意思和運(yùn)用)
3.DOM事件流
4.event.stopPropagation() 阻止冒泡和event.preventDefault() 阻止默認(rèn)事件等需要記
5.自定義事件
數(shù)據(jù)轉(zhuǎn)換
1.JavaScript的typeof返回哪些數(shù)據(jù)類型躺屁?即基本數(shù)據(jù)類型和復(fù)雜數(shù)據(jù)類型试吁。會(huì)問具體有哪些類型?區(qū)別是什么楼咳?
2.顯式類型轉(zhuǎn)換
3.隱式類型轉(zhuǎn)換
4.四則運(yùn)算/判斷語句(問的不是很多)
5.[]==[] //false true+true=2 等的判斷
6.typeof
7.深拷貝和淺拷貝是什么及兩者的區(qū)別
原型與原型鏈
1.創(chuàng)建對(duì)象有幾種方法熄捍?
2.原型、構(gòu)造函數(shù)母怜、實(shí)例余耽、原型鏈知道四者之間的關(guān)系,知道什么是原型和原型鏈
3.衍生題:使用原型鏈來實(shí)現(xiàn)繼承
面向?qū)ο箢?/h5>
1.類與實(shí)例
2.如何實(shí)現(xiàn)繼承(借助構(gòu)造函數(shù)實(shí)現(xiàn)繼承苹熏,借助原型鏈實(shí)現(xiàn)繼承)
通信類
1.什么是同源策略及限制
2.前后端如何通信
3.ajax
4.xmlhttprequest對(duì)象的工作流程
5.跨域通信的幾種方式
6.sessionstorage碟贾,localstorage,cookie的區(qū)別
渲染機(jī)制
1.瀏覽器是怎么渲染的轨域?
2.渲染機(jī)制:重排reflow和重繪repaint(目前被問到的概率比較懈さⅰ)
JS運(yùn)行機(jī)制
1.js單線程(筆試會(huì)給出代碼寫答案)->什么是任務(wù)隊(duì)列?什么是event loop干发?
2.異步任務(wù)->setTimeout和setInterval/ DOM事件/ES6中的Promise
頁面性能類
1.提升頁面性能的方式有哪些朱巨?也就是前端性能優(yōu)化,其實(shí)可以分為移動(dòng)端和桌面瀏覽器說
2.異步加載的方式與區(qū)別
3.瀏覽器緩存
錯(cuò)誤監(jiān)控類(如何讓檢測(cè)js錯(cuò)誤枉长?怎么保證產(chǎn)品質(zhì)量冀续?)
1.前端錯(cuò)誤分類
2.錯(cuò)誤的捕獲方式
3.衍生:js的跨域運(yùn)行錯(cuò)誤可以捕獲嗎?
閉包
1.閉包的含義必峰?
2.使用閉包的注意點(diǎn)洪唐?或者閉包的缺點(diǎn)
3.關(guān)于閉包的代碼題(例如一段代碼要按預(yù)期結(jié)果輸出,怎么改吼蚁?)
HTTP協(xié)議類
1.http狀態(tài)碼凭需?
2.持久鏈連接
3.管線化
4.http和https。問的深的話還會(huì)問三次握手什么的
安全類
1.CSRF基本概念肝匆,攻擊原理和防御措施
2.XSS基本概念粒蜈,攻擊原理和防御措施
VUE
1.mvvm框架
2.vue的數(shù)據(jù)雙向綁定原理,最好可以看下源碼术唬,object.defineproperty的用法要記住
3.使用的設(shè)計(jì)模式:觀察者模式
4.生命周期是什么薪伏?需要記得每個(gè)節(jié)點(diǎn)觸發(fā)的時(shí)機(jī)?
5.組件之間的交互
6.vuex了解一下
7.axios了解一下
8.vue-router是什么粗仓?有哪幾種導(dǎo)航鉤子嫁怀?
算法
1.排序设捐,至少知道兩種(冒泡,選擇塘淑,快速萝招,希爾等)
2.數(shù)組去重,至少知道兩種
ES6
1.箭頭函數(shù)中的this指向誰存捺?
2.如何實(shí)現(xiàn)一個(gè)promise槐沼,promise的原理,以及它的兩個(gè)參數(shù)是什么捌治?
3.promise中第二個(gè)參數(shù)的reject中執(zhí)行的方法和promise.catch()都是失敗執(zhí)行的岗钩,分別這么寫有什么區(qū)別,什么情況下會(huì)兩個(gè)都同時(shí)用到肖油?
4.map和set有沒有用過浓领,如何實(shí)現(xiàn)一個(gè)數(shù)組去重陶因,map數(shù)據(jù)結(jié)構(gòu)有什么優(yōu)點(diǎn)椒涯?
其他
1.js的回調(diào)
2.可能會(huì)問到git
3.響應(yīng)式布局(我被問到bootstrap的柵格化布局是用什么径密,回去翻了一下筆記是媒體查詢,哭)
4.兼容性問題
5.正則驗(yàn)證
6.可能會(huì)問到webpack
7.可能會(huì)問到sass和less
暫時(shí)先寫到這里县袱,后期持續(xù)更新浑娜。。式散。
文末打個(gè)廣告筋遭。之前學(xué)習(xí)的時(shí)候有買過慕課網(wǎng)的視頻,要的話留言課程名稱杂数。