近期前端面試中常常碰到的問題總結

最近想着去市場中試試水,看看本身的幾斤幾兩。
哈哈,而後大概遇到了這麼幾類問題吧。寫出來和你們分享一下。html

原生類

1.原型及原型鏈的問題
這個問題面試的公司都有問。其實這個問題也是好多新手特別犯難的一個問題。對於一些人來講原型和原型鏈要解釋得清楚又準確就要把原型這塊的知識點看好多遍。OK,直接說個人方法吧,我直接在紙上畫了這樣的一張圖:
圖片描述前端

當我畫完這張圖並輔以說明的時候面試官通常就不會繼續問原型和原型鏈的問題了。vue

2.繼承
通常問完了原型以後會被問道關於繼承的問題,只要回答繼承的幾種方式和各類方式的優缺點,側重點是對組合繼承方式的理解。面試

3.手寫深拷貝
這個問題也是被問到了不止一遍,就連美團也問到了。
最簡單的就是使用JSON.parse()與JSON.stringify()。
其次還要掌握一種。json

function deepClone(obj){
    var newobj=obj.instanceof Array?[]:{};
    if(typeof obj!=="object"){
        return obj;
    }else{
        for(var i in obj){
            newobj[i]=obj[i].typeof obj[i]=="object"?deepClone(obj[i]):obj[i];
        }
    }
    return newobj;
}

固然,只要理解了上面的方式,在回答的時候說出大概意思也能夠。(推薦寫出來,邊寫邊講原理)
4.script標籤的defer和async有什麼區別
這個本身看一下就好,不是特別難,並且問的機率不大。segmentfault

開發類

1.關於頁面緩存的問題
這個就比較簡單了,只要看幾篇文章就能夠回答的很好。
2.頁面的優化
關於這個問題,除了說那些關於代碼壓縮、圖片整合、減小請求次數之外。最好說出一些深層次的東西,好比for循環和map的區別、if判斷和switch判斷性能上有什麼樣的區別、發送請求返回的數據儘可能壓縮在14kb或14kb的倍數、W3C規定setTimeout的最小時間是4ms、因爲大多數顯示器的刷新頻率都是60Hz,因此涉及到動畫的setTimeout的時間最好不要低於16.7ms等等這樣的回答。這樣的回答每每得到面試官更多的好感。
3.跨域的方法
這個問題也是各個公司都喜歡問的。通常回答如下幾點就行了:
jsonp,代理,postMessage(一樣也是iframe跨域傳輸經常使用的方式)
4.jsonp的原理以及jsonp的返回
這個面試以前必定要看,jsonp的原理你們都知道,就是利用script標籤的src屬性,不過對於這個問題必定要很是看重,最好能手寫出jsonp請求。對於jsonp返回數據的類型,這個也是面試官常常會順着問的問題。跨域

框架及其它

由於個人簡歷上只寫了vue,因此問的都是一些關於vue的問題。
我就說幾個常見的問題吧。
比較簡單的是數據傳遞的方法。
還有數據雙向綁定的原理。這個我會在下面附上連接。連帶着原型的連接一塊兒。通讀這兩篇文章就問題不大了。promise

promise
這個是重點,若是你面試的是一家使用比較新的技術的互聯網公司,頗有可能會問到promise。而問的方面都會有所不一樣,這裏無法給出範圍,最好的辦法就是把阮一峯老師關於promise的那部分多看兩遍。固然,也不排除會有一些公司會讓手寫出promise的實現方法。緩存

面試了幾家公司,關於H5和CSS3的問題都很少,關於this指向的問題也不多問,閉包的問題也很少,還有像call和apply的區別這種簡單的問題我就再也不說了,(不排除會有公司會出手寫call()方法的實現)
有的公司會問移動端和pc端開發有什麼不一樣(這個根據我的開發經驗去說就好,在回答問題的時候切入本身寫的項目也是能夠的。)
第三個參考連接也是很值得看的,特別是那些作前端時間不長的小夥伴,很適合用來做知識梳理。
PS:我的能力有限,沒能挺到美團的最後一輪面試,不過面試的幾家公司也是涉及到了各行各業,這篇文章只是對即將面試的前端小夥伴們一個參考,最後效果仍是要看我的努力的。加油吧!閉包

起風了,惟有努力生存。


參考:
https://segmentfault.com/a/11...
https://segmentfault.com/a/11...
http://www.dailichun.com/2018...

相關文章
相關標籤/搜索