日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
完整的前端工程師面試問(wèn)題列表

前言:@darcyclarke 在 GitHub 上分享了一個(gè) repo,其中包括了不少前端面試問(wèn)題,可用于檢驗(yàn)潛在的候選人。絕不推薦在單個(gè)候選人身上用上所用的問(wèn)題(那樣會(huì)花費(fèi)好幾個(gè)小時(shí)滴)。從這個(gè)列表選擇一些,應(yīng)該能從候選人身上,檢測(cè)出你所需要的技能。

目前成都創(chuàng)新互聯(lián)公司已為上千余家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站運(yùn)營(yíng)、企業(yè)網(wǎng)站設(shè)計(jì)、麻城網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶(hù)導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶(hù)和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。

請(qǐng)記住,下面的很多問(wèn)題都是開(kāi)放式的,無(wú)標(biāo)準(zhǔn)答案,并能引發(fā)有趣的討論。相比直接的答案,相信你在面試前端工程師時(shí),從討論中你對(duì)候選人會(huì)了解的更多。

以下中文譯文由@shawnqiang 完成。

問(wèn)題貢獻(xiàn)者

@bentruyman (http://bentruyman.com/), @roger_raymond (http://twitter.com/iansym), @ajpiano (http://ajpiano.com/), @paul_irish (http://paulirish.com/), @SlexAxton (http://alexsexton.com/), @boazsender (http://boazsender.com/), @miketaylr (http://miketaylr.com/), @vladikoff (http://vladfilippov.com/), @gf3 (http://gf3.ca/), @jon_neal (http://twitter.com/jon_neal), @wookiehangover (http://wookiehangover.com/) and @darcy_clarke (http://darcyclarke.me)

一般問(wèn)題

你用Twitter嗎? (在天朝***問(wèn)你用微博嗎?)

→如果用,你都關(guān)注那些人?

你用Github嗎?

→如果用,你關(guān)注的項(xiàng)目有什么?

你關(guān)注的博客有那些?

你使用那些版本管理系統(tǒng),比如Git,SVN等?

你常用的開(kāi)發(fā)環(huán)境是怎樣的?比如操作系統(tǒng),文本編輯器,瀏覽器,及其他工具等。

你能描述一下你制作一個(gè)網(wǎng)頁(yè)的工作流程嗎?

你能描述一下漸進(jìn)增強(qiáng)和優(yōu)雅降級(jí)之間的不同嗎?

→如果提到了特性檢測(cè),可以加分。

請(qǐng)解釋一下什么是語(yǔ)義化的HTML?

你更喜歡在哪個(gè)瀏覽器下進(jìn)行開(kāi)發(fā)?你使用那些開(kāi)發(fā)人員工具?

你如何對(duì)網(wǎng)站的文件和資源進(jìn)行優(yōu)化?期待的解決方案包括:

· 文件合并

· 文件最小化/文件壓縮

· 使用CDN托管

· 緩存的使用

· 其他

為什么利用多個(gè)域名來(lái)存儲(chǔ)網(wǎng)站資源會(huì)更有效?

→瀏覽器一次可以從一個(gè)域名下做多少資源?

請(qǐng)說(shuō)出三種減低頁(yè)面加載時(shí)間的方法。(加載時(shí)間指感知的時(shí)間或者實(shí)際加載時(shí)間)

如果你接到了一個(gè)使用Tab來(lái)縮進(jìn)代碼的項(xiàng)目,但是你喜歡空格,你會(huì)怎么做?

· 建議這個(gè)項(xiàng)目使用像EditorConfig (http://editorconfig.org) 之類(lèi)的規(guī)范

· 為了保持一致性,轉(zhuǎn)換成項(xiàng)目原有的風(fēng)格

· 直接使用VIM的retab命令

請(qǐng)寫(xiě)一個(gè)簡(jiǎn)單的幻燈效果頁(yè)面

→如果不使用JS來(lái)完成,可以加分。

你都使用那些工作來(lái)測(cè)試代碼的性能?

· 例如JSPerf (http://jsperf.com/)

· 例如Dromaeo (http://dromaeo.com/)

· 其它。

如果今年你打算熟練掌握一項(xiàng)新技術(shù),那會(huì)是什么?

請(qǐng)談一下你對(duì)網(wǎng)頁(yè)標(biāo)準(zhǔn)和標(biāo)準(zhǔn)制定機(jī)構(gòu)重要性的理解。

什么是FOUC?你如何來(lái)避免FOUC?

#p#

HTML相關(guān)問(wèn)題

文檔類(lèi)型的作用是什么?你知道多少種文檔類(lèi)型?

瀏覽器標(biāo)準(zhǔn)模式和怪異模式之間的區(qū)別是什么?

使用XHTML的局限有那些?

→如果頁(yè)面使用’application/xhtml+xml’會(huì)有什么問(wèn)題嗎?

如果網(wǎng)頁(yè)內(nèi)容需要支持多語(yǔ)言,你會(huì)怎么做?

在設(shè)計(jì)和開(kāi)發(fā)多語(yǔ)言網(wǎng)站時(shí),有哪些問(wèn)題你必須要考慮?

在HTML5的頁(yè)面中可以使用XHTML的語(yǔ)法嗎?

在HTML5中如何使用XML?

’data-’屬性的作用是什么?

如果把HTML5看作做一個(gè)開(kāi)放平臺(tái),那它的構(gòu)建模塊有那些?

請(qǐng)描述一下cookies、sessionStorage和localStorage的區(qū)別?

JS相關(guān)問(wèn)題

你使用過(guò)那些Javascript庫(kù)?

你是否研究過(guò)你所使用的JS庫(kù)或者框架的源代碼?

什么是哈希表?

’undefined’變量和’undeclared’變量分別指什么?

閉包是什么,如何使用它,為什么要使用它?

→你喜歡的使用閉包的模式是什么?

請(qǐng)舉出一個(gè)匿名函數(shù)的典型用例?

請(qǐng)解釋什么是Javascript的模塊模式,并舉出實(shí)用實(shí)例。

·如果有提到無(wú)污染的命名空間,可以考慮加分。

·如果你的模塊沒(méi)有自己的命名空間會(huì)怎么樣?

你如何組織自己的代碼?是使用模塊模式,還是使用經(jīng)典繼承的方法?

請(qǐng)指出Javascript宿主對(duì)象和內(nèi)置對(duì)象的區(qū)別?

指出下列代碼的區(qū)別:

 
 
 
  1. function 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。

你使用過(guò)JavaScript的模板系統(tǒng)嗎?

→如有使用過(guò),請(qǐng)談?wù)勀愣际褂眠^(guò)那些類(lèi)似庫(kù)文件。比如Mustache.js、Handlebars等等。

請(qǐng)解釋變量聲明提升。

請(qǐng)描述一下事件冒泡機(jī)制。

”attribute”和”property”的區(qū)別是什么?

為什么擴(kuò)展JavaScript內(nèi)置對(duì)象是個(gè)壞做法?

為什么擴(kuò)展JavaScript內(nèi)置對(duì)象是個(gè)好做法?

請(qǐng)指出document load和document ready的區(qū)別。(這是個(gè)問(wèn)題的問(wèn)題)

’==’和’===’有什么不同?

你如何獲取瀏覽器URL中查詢(xún)字符串中的參數(shù)。

請(qǐng)解釋一下JavaScript的同源策略。

請(qǐng)解釋一下事件代理。

請(qǐng)描述一下JavaScript的繼承模式。

如何實(shí)現(xiàn)下列代碼:

 
 
 
  1. [1,2,3,4,5].duplicator(); // [1,2,3,4,5,1,2,3,4,5]  

描述一種JavaScript memoization(避免重復(fù)運(yùn)算)的策略。

什么是三元條件語(yǔ)句?

函數(shù)的參數(shù)元是什么?

什么是”use strict”?使用它的好處和壞處分別是什么?

#p#

JS代碼示例:

 
 
 
  1. ~~3.14   

問(wèn)題:上面的語(yǔ)句的返回值是什么? **答案:3

 
 
 
  1. "i'm a lasagna hog".split("").reverse().join("");  

問(wèn)題:上面的語(yǔ)句的返回值是什么? **答案:”goh angasal a m’i”

 
 
 
  1. ( window.foo || ( window.foo = "bar" ) );  

問(wèn)題:window.foo的值是什么? **答案:”bar” 只有window.foo為假時(shí)的才是上面答案,否則就是它本身的值。

 
 
 
  1. var foo = "Hello";   
  2. (function() { var bar = " World"; alert(foo + bar); })();   
  3. alert(foo + bar); 

問(wèn)題:上面兩個(gè)alert的結(jié)果是什么 答案: “Hello World” & ReferenceError: bar is not defined

 
 
 
  1. var foo = [];  
  2. foo.push(1);  
  3. foo.push(2); 

問(wèn)題:foo.length的值是什么? **答案:’2′

 
 
 
  1. var foo = {};  
  2.  foo.bar = 'hello'; 

問(wèn)題:foo.length的值是什么? **答案: undefined

#p#

jQuery相關(guān)問(wèn)題

解釋”chaining”。

解釋”deferreds”。

你知道那些針對(duì)jQuery的優(yōu)化方法。

請(qǐng)解釋’.end()’的用途。

你如何給一個(gè)事件處理函數(shù)命名空間,為什么要這樣做?

請(qǐng)說(shuō)出你可以傳遞到j(luò)Query方法的四種不同值。

→選擇器(字符串),HTML(字符串),回調(diào)函數(shù),HTML元素,對(duì)象,數(shù)組,元素?cái)?shù)組,jQuery對(duì)象等。

什么是效果隊(duì)列?

請(qǐng)指出’.get()’、’[]‘、’eq()’,的區(qū)別。

請(qǐng)指出’.bing()’、’.live()’ 和 ‘.delegate()’的區(qū)別。

請(qǐng)指出 ‘$’ 和 ‘$.fn’ 的區(qū)別?或者解釋什么是 ‘$.fn’ 。

請(qǐng)優(yōu)化下列選擇器:

 
 
 
  1. $(".foo div#bar:eq(0)") 

#p#

CSS相關(guān)問(wèn)題

描述css reset的作用和用途。

描述下浮動(dòng)和它的工作原理。

清除浮動(dòng)的方法有那些,分別適用于什么情形。

解釋css sprites,如何使用。

你最喜歡的圖片替換方法是什么,你如何選擇使用。

討論CSS hacks,條件引用或者其他。

如何為有功能限制的瀏覽器提供網(wǎng)頁(yè)。

→你會(huì)使用那些技術(shù)和處理方法。

何視覺(jué)隱藏網(wǎng)頁(yè)內(nèi)容,只讓它們?cè)谄聊婚喿x器中可用。

你使用過(guò)網(wǎng)格系統(tǒng)嗎?如果使用過(guò),你最喜歡哪種?

你使用過(guò)meidia queries(媒體查詢(xún))嗎,或者移動(dòng)網(wǎng)站相關(guān)的CSS布局。

你熟悉SVG樣式的書(shū)寫(xiě)嗎?

如何優(yōu)化網(wǎng)頁(yè)的打印樣式。

在書(shū)寫(xiě)高效CSS文件時(shí)會(huì)有哪些問(wèn)題需要考慮。

你使用CSS預(yù)處理器嗎?(SASS,Compass,Stylus,LESS)

→如果使用,描述你的喜好。

你是否接觸過(guò)使用非標(biāo)準(zhǔn)字體的設(shè)計(jì)?

→字體服務(wù),Google Webfonts, Typekit,等等。

請(qǐng)解釋瀏覽器是如何根據(jù)CSS選擇器選擇對(duì)應(yīng)元素的。

可選的有趣問(wèn)題

你編寫(xiě)過(guò)的最酷的代碼是什么?其中你最自豪的是什么?

你知道HTML5的幫派標(biāo)志嗎?

你是否正在或曾經(jīng)在一艘船上。(不懂這個(gè)幽默)

你使用的開(kāi)發(fā)工具中,你最喜歡的部分是什么?

你有什么業(yè)余項(xiàng)目嗎?是那種類(lèi)型的?

解釋cornify的重要性?(本題完全摸不到頭腦)

在一張紙上,垂直寫(xiě)下ABCDE,然后不用任何代碼,將他們到序排列。

→靜靜地看他們是否將紙翻轉(zhuǎn)。

海盜還是忍者?

→如果是兩者的合體,并有恰當(dāng)理由,可以加分。如果是僵尸猴子海盜加忍者加兩分。(譯注,此題文化差異過(guò)大)

如果沒(méi)有在Web開(kāi)發(fā),你會(huì)做什么?

卡門(mén)圣迭哥的隱藏處在哪里?

→提示:本題的答案永遠(yuǎn)是錯(cuò)的。

你***的IE特性是什么?

完句填空: Brendan Eich和Doug Crockford是JavaScript的________。

討論:jQuery是牛逼的庫(kù)還是最牛逼的庫(kù)。


分享文章:完整的前端工程師面試問(wèn)題列表
本文來(lái)源:http://m.5511xx.com/article/cdipejg.html