- 相關(guān)推薦
完整版前端工程師筆試問題列表
導(dǎo)讀:請(qǐng)記住,下面的很多問題都是開放式的,無標(biāo)準(zhǔn)答案,并能引發(fā)有趣的討論,
完整版前端工程師筆試問題列表
。相比直接的答案,相信你在面試前端工程師時(shí),從討論中你對(duì)候選人會(huì)了解的更多。以下是由應(yīng)屆畢業(yè)生網(wǎng)小編J.L為您整理推薦的完整版前端工程師筆試問題列表,歡迎參考閱讀。一般問題
★你用Twitter嗎? (在天朝最好問你用微博嗎?)
→如果用,你都關(guān)注那些人?
★你用Github嗎?
→如果用,你關(guān)注的項(xiàng)目有什么?
★你關(guān)注的博客有那些?
★你使用那些版本管理系統(tǒng),比如Git,SVN等?
★你常用的開發(fā)環(huán)境是怎樣的?比如操作系統(tǒng),文本編輯器,瀏覽器,及其他工具等。
★你能描述一下你制作一個(gè)網(wǎng)頁的工作流程嗎?
★你能描述一下漸進(jìn)增強(qiáng)和優(yōu)雅降級(jí)之間的不同嗎?
→如果提到了特性檢測(cè),可以加分。
★請(qǐng)解釋一下什么是語義化的HTML?
★你更喜歡在哪個(gè)瀏覽器下進(jìn)行開發(fā)?你使用那些開發(fā)人員工具?
★你如何對(duì)網(wǎng)站的文件和資源進(jìn)行優(yōu)化?期待的解決方案包括:
· 文件合并
· 文件最小化/文件壓縮
· 使用CDN托管
· 緩存的使用
· 其他
★為什么利用多個(gè)域名來存儲(chǔ)網(wǎng)站資源會(huì)更有效?
→瀏覽器一次可以從一個(gè)域名下做多少資源?
★請(qǐng)說出三種減低頁面加載時(shí)間的方法。(加載時(shí)間指感知的時(shí)間或者實(shí)際加載時(shí)間)
★如果你接到了一個(gè)使用Tab來縮進(jìn)代碼的項(xiàng)目,但是你喜歡空格,你會(huì)怎么做?
· 建議這個(gè)項(xiàng)目使用像EditorConfig 之類的規(guī)范
· 為了保持一致性,轉(zhuǎn)換成項(xiàng)目原有的風(fēng)格
· 直接使用VIM的retab命令
★請(qǐng)寫一個(gè)簡(jiǎn)單的幻燈效果頁面
→如果不使用JS來完成,可以加分。
★你都使用那些工作來測(cè)試代碼的性能?
· 例如JSPerf
· 例如Dromaeo
· 其它。
★如果今年你打算熟練掌握一項(xiàng)新技術(shù),那會(huì)是什么?
★請(qǐng)談一下你對(duì)網(wǎng)頁標(biāo)準(zhǔn)和標(biāo)準(zhǔn)制定機(jī)構(gòu)重要性的理解。
★什么是FOUC?你如何來避免FOUC?
HTML相關(guān)問題
★文檔類型的作用是什么?你知道多少種文檔類型?
★瀏覽器標(biāo)準(zhǔn)模式和怪異模式之間的區(qū)別是什么?
★使用XHTML的局限有那些?
→如果頁面使用’application/xhtml+xml’會(huì)有什么問題嗎?
★如果網(wǎng)頁內(nèi)容需要支持多語言,你會(huì)怎么做?
★在設(shè)計(jì)和開發(fā)多語言網(wǎng)站時(shí),有哪些問題你必須要考慮?
★在HTML5的頁面中可以使用XHTML的語法嗎?
★在HTML5中如何使用XML?
★’data-’屬性的作用是什么?
★如果把HTML5看作做一個(gè)開放平臺(tái),那它的構(gòu)建模塊有那些?
★請(qǐng)描述一下cookies、sessionStorage和localStorage的區(qū)別?
JS相關(guān)問題
★你使用過那些Javascript庫?
★你是否研究過你所使用的JS庫或者框架的源代碼?
★什么是哈希表?
★’undefined’變量和’undeclared’變量分別指什么?
★閉包是什么,如何使用它,為什么要使用它?
→你喜歡的使用閉包的模式是什么?
★請(qǐng)舉出一個(gè)匿名函數(shù)的典型用例?
★請(qǐng)解釋什么是Javascript的模塊模式,并舉出實(shí)用實(shí)例,
資料共享平臺(tái)
《完整版前端工程師筆試問題列表》(http://www.msguai.com)。·如果有提到無污染的命名空間,可以考慮加分。
·如果你的模塊沒有自己的命名空間會(huì)怎么樣?
★你如何組織自己的代碼?是使用模塊模式,還是使用經(jīng)典繼承的方法?
★請(qǐng)指出Javascript宿主對(duì)象和內(nèi)置對(duì)象的區(qū)別?
★指出下列代碼的區(qū)別:
1function
Person(){}
var
person = Person()
var
person =
new
Person()
★’.call’和’.apply’的區(qū)別是什么?
★請(qǐng)解釋’Funciton.prototype.bind’的作用?
★你如何優(yōu)化自己的代碼?
★你能解釋一下JavaScript中的繼承是如何工作的嗎?
★在什么時(shí)候你會(huì)使用’document.write()’?
→大多數(shù)生成的廣告代碼依舊使用’document.write()’,雖然這種用法會(huì)讓人很不爽。
★請(qǐng)指出瀏覽器特性檢測(cè),特性推斷和瀏覽器UA字符串嗅探的區(qū)別?
★請(qǐng)盡可能詳盡的解釋AJAX的工作原理。
★請(qǐng)解釋JSONP的工作原理,以及它為什么不是真正的AJAX。
★你使用過JavaScript的模板系統(tǒng)嗎?
→如有使用過,請(qǐng)談?wù)勀愣际褂眠^那些類似庫文件。比如Mustache.js、Handlebars等等。
★請(qǐng)解釋變量聲明提升。
【完整版前端工程師筆試問題列表】相關(guān)文章:
典型的筆試問題07-28
筆試問題及應(yīng)對(duì)策略08-23
騰訊WEB前端筆試題和面試題答案10-09
機(jī)械工程師筆試題07-17
大企業(yè)筆試問題及應(yīng)對(duì)策略10-25
某公司Java工程師筆試題09-20
延遲退休方案列表06-15