總結前端面試過程中最容易出現的問題


前言

轉自https://www.haorooms.com/post/qianduan_mianshi

javascript常見題目

一、您對js的原型是如何理解的?您對js的繼承是如何理解的?能否舉例說明js的繼承?

關於這個題目,我之前的一篇文章 http://www.haorooms.com/post/js_constructor_pro ,您可以看一下。理解一下原型prototype,關於繼承,那主要是js原型鏈的繼承。關於繼承的理解及舉例(我這里就不詳細介紹了,簡單介紹之后,你即使背過了,也不一定理解,對於公司也是不公平的)。我還是推薦面試者看一本書《[JavaScript高級程序設計(第3版)]》,這本書對js講的很詳細。關於這個題目,您可以閱讀其第六章就可以了!認真閱讀之后,相信你能理解,也能夠簡單的說出來!

關於js的繼承,確實是重點和難點,我寫過兩篇博客,大家可以看下:http://www.haorooms.com/post/js_lei_jicheng

http://www.haorooms.com/post/js_jc_lei2

二、js閉包?舉例並說明其主要的作用!

關於閉包,其實是指有權訪問另一個函數作用域中變量的函數。具體我之前也寫過一篇文章,可以看一看!

javascript閉包的理解 http://www.haorooms.com/post/js_bb

javascript閉包入門理解(二):http://www.haorooms.com/post/js_bbtwo

三、js數組主要有哪些方法?主要參數你了解嗎?

具體你可以查一下,常用的一般有如下:

1 、shift():刪除數組的第一個元素,返回刪除的值。這里是0

2 、unshift(3,4):把參數加載數組的前面,返回數組的長度。現在list:中是3,4,0,1,2

3、pop():刪除數組的最后一個元素,返回刪除的值。這里是2.

4、push(3):將參數加載到數組的最后,返回數組的長度,現在List中時:0,1,2,3

5、concat(3,4):把兩個數組拼接起來。

6、splice(start,deleteCount,val1,val2,...):從start位置開始刪除deleteCount項,並從該位置起插入val1,val2,...

7、reverse:將數組反序

var a = [1,2,3,4,5]; var b = a.reverse(); //a:[5,4,3,2,1] b:[5,4,3,2,1] 

8、sort(orderfunction):按指定的參數對數組進行排序 var a = [1,2,3,4,5]; var b = a.sort(); //a:[1,2,3,4,5] b:[1,2,3,4,5]

9、slice(start,end):返回從原數組中指定開始下標到結束下標之間的項組成的新數組

var a = [1,2,3,4,5]; var b = a.slice(2,5); //a:[1,2,3,4,5] b:[3,4,5]

四、js迭代的方法

every() 、fliter()、forEach()、map()、some()具體大家可以查一下!

五、js數組去重和排序

具體我就不詳細描述了。

六、js正則表達式

關於正則:http://www.haorooms.com/post/js_regex_refuse ,這篇文章應對面試足夠了!

讓你寫個簡單的正則,去掉字符串左右空格。具體看看我之前的文章http://www.haorooms.com/post/js_kong_ge

關於正則,你可以去了解一下!

七、純js的ajax請求原理

可以查詢,了解一下!看下這幾篇文章http://www.haorooms.com/post/js_ajax_chun 和http://www.haorooms.com/post/js_shixian_jquery 最后關於js實現ajax的,最新出了js的fetch方法,很不錯的!

八、js模塊化

可以看下我之前的文章:http://www.haorooms.com/post/js_require_zz

九、雙等號隱性轉換

具體看文章:http://www.haorooms.com/post/js_yinxingleixing

十、js操作符,字符串截取等

具體請看:http://www.haorooms.com/post/js_czf_mst

字符串截取,substr 、substring等的區別

十一、js中繼承中call和apply()的區別

用法差不多,傳遞參數不同。具體你可以網上查查,也可以看下我的文章 http://www.haorooms.com/post/js_constructor_pro

十二、類數組轉換為數組的方法

Array.prototype.slice.call(arguments);

十三、cookie 不設置過期時間,默認過期時間是多少?

關閉瀏覽器就結束了

十四、改變數組長度的方法有哪些?

shift、unshift、pop、push

十五、js事件循環 event loop

請看文章:http://www.haorooms.com/post/js_xiancheng

十六、require 和 import的區別

看文章:http://blog.csdn.net/qq_28702545/article/details/54892562

jquery常見題目

一、jquery源碼研究過沒有?

二、jquery插件寫過沒有,一般如何寫?

可以看我之前的一篇文章:http://www.haorooms.com/post/js_jquery_chajian

三、jquery的bind(),live(),delegate(),on() 區別

網上可以搜索一下,看一下!

前端常見題目

一、如何處理跨域?

jsonp等,可以看下我寫的 瀏覽器跨域訪問解決方案

二、如何處理緩存?如何清除緩存。

ajax隨機數、ajax參數、meta中設置等。可以看下我寫的 js清除瀏覽器緩存的幾種方法

三、http請求問題,HTTP請求信息由那3部分組成?

1、請求方法URI協議/版本 (例如:GET/haorooms.jspHTTP/1.1 2、請求頭(Request Header)(例如:Accept:image/gif.image/jpeg.*/* Accept-Language:zh-cn Connection:Keep-Alive Host:localhost等等) 3、請求正文 

關於圖片的請求,可以看我之前的一篇文章 http://www.haorooms.com/post/web_http_request

四、前端性能優化問題,你是如何處理前端性能問題的?

看我之前的一篇文章:http://www.haorooms.com/post/web_xnyh_jscss 及 前端性能優化補充篇

五、網站js和css如何壓縮?有哪些方法?

ant+yuicompressor具體可以看看我之前的一篇文章:http://www.haorooms.com/post/ant_yuicom

ant:http://www.haorooms.com/tools/ant_book/

SASS等 可以對css進行自動壓縮!

也可以用Grunt構建工具進行。可以看下 前端js和css的壓縮合並之grunt

六、用到哪些css插件?

bootstrap,animate.css 等

七、讓你自己搭建一個網站,你是如何做架構的?

考察前端架構能力。

八、一些狀態碼你了解嗎?

200成功類、300重定向類、400客戶端類、500服務器端類。具體可以網上查一下!

九、如何用瀏覽器進行代碼調試?

谷歌瀏覽器、火狐、IE等。(不明白的同學具體網上可以查一下)

十、json字符串轉為json的方法

具體請看:http://www.haorooms.com/post/js_jsons_h

http://www.haorooms.com/post/json_object_json_string

html+css+html5+css3 常見題目

一、假如一個頁面,左側固定,右側自適應,你是如何做到的?

方法很多,一般是margin和浮動,具體可以網上查一下。很簡單。

二、html5新的標簽和特性有哪些?

html5標簽有很多,你可以網上查一下。

三、你常用的css3有哪些?說出你記得的。

哈哈哈,這個很多,你要再復習一下css3包括其動畫等等。

四、如何處理瀏覽器兼容性問題?

請看:http://www.haorooms.com/post/IE_jianrong

五、如何用css美化radio、checkbox等按鈕樣式?

具體可以看我的一篇文章:http://www.haorooms.com/post/css_mh_ck_radio

web touch常見題目

一、做手機網站長見的兼容問題有哪些?

看下手機網站相關文章。

二、網站如何自適應的?響應式網站一般如何制作?

可以隨便聊聊。可以看下http://www.haorooms.com/post/css3media

三、zepto.js使用過程中有哪些問題?jquerymobile用過嗎?會有哪些問題?

用過的話,可以隨便聊一下!

加分項

例如,你們聊到數據庫,數一下如何用mongo做分頁等等,包括mysql數據庫等等。

聊到inux系統,linux常用的命令。

聊到angularjs,vue.js、angularjs的指令,雙向數據綁定。MVVM模式和mvc模式的區別及mvp模式。

聊到前端架構,及百度fits的jello等。

聊到常用的版本控制工具git或者SVN,講講git常用的命令,git回滾到某個版本怎么做( $ git reset --hard 某個版本號)

人事面試

人事面試和技術面試是有區別的,人事一般問一些概況總結方面的問題,我下面舉一些列子吧!

一、你做了這么多項目,讓你感受最深,印象最深的是哪個項目?你從中學到了什么?為什么會感受最深?

二、做前端開發這么多年來?說下你的感受吧!

三、簡單自我介紹一下自己。

四、你對公司有什么需要了解的?

五、談到薪資,談到離職原因,談到未來幾年的規划等等,我在這里就不具體說了。

上面是我面試過程中最常見的一些問題。注意:面試的時候千萬要真誠,不要撒謊,是什么就是什么,我列舉上面題目的原因是有些前端人員可能技術很好,但是面試的時候緊張,沒有准備。這樣你簡單准備了之后,就能發揮自己正常水平!廣大朋友們,加油吧!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM