前端開發(fā)面試題及答案整理
想要應(yīng)聘前端開發(fā)的求職者,要做好完成面試題的準(zhǔn)備。下面是由學(xué)習(xí)啦小編分享的前端開發(fā)面試題及答案,希望對你有用。
前端開發(fā)面試題及答案
1、對Web標(biāo)準(zhǔn)以及W3C的理解與認(rèn)識?
答:標(biāo)簽閉合、標(biāo)簽小寫、不亂嵌套、提高搜索機器人搜索幾率、使用外鏈CSS和JS腳本、結(jié)構(gòu)行為表現(xiàn)的分離、文件下載與頁面速度更快、內(nèi)容能被更多的用戶所訪問、內(nèi)容能被更廣泛的設(shè)備所訪問、更少的代碼和組件、容易維護、改版方便,不需要變動頁面內(nèi)容、提供打印版本而水需要復(fù)制內(nèi)容、提高網(wǎng)站易用性。
2、XHTML和HTML有什么區(qū)別?
答:HTML是一種基本的WEB網(wǎng)頁設(shè)計語言,XHTML是一個基于XML的置標(biāo)語言 最主要的不同:
XHTML元素必須被正確地嵌套;
XHTML元素必須被關(guān)閉;
標(biāo)簽名必須用小寫字母;
XHTML文檔必須擁有根元素。
3、Doctype?嚴(yán)格模式與混雜模式-如何觸發(fā)這兩種模式,區(qū)分它們有何意義? 答:Doctype用于聲明文檔使用哪種規(guī)范(HTML/XHTML)
該標(biāo)簽可聲明三種DTD類型,分別為嚴(yán)格版本、過度版本以及基于框架的HTML文檔。
加入XML聲明可觸發(fā),解析方式更改為IE5.5擁有IE5.5的bug。
4、行內(nèi)元素有哪些?塊級元素有哪些?CSS的盒模型?
答:行內(nèi)元素:a b br i span input select
塊級元素:div p h1 h2 h3 h4 form ul
CSS盒模型:內(nèi)容,border margin padding
5、CSS引入的方式有哪些?link和@import的區(qū)別是?
答:方式:內(nèi)聯(lián) 內(nèi)嵌 外鏈 導(dǎo)入
區(qū)別:同時加載
前者無兼容性,后者CSS2.1以下瀏覽器不支持
Link支持使用javascript 改變樣式,后者不可。
6.CSS選擇符有哪些?哪些屬性可以繼承?優(yōu)先級算法如何計算?內(nèi)聯(lián)和important哪個優(yōu)先級高?
答:標(biāo)簽選擇符、類選擇符、id選擇符
繼承不如指定 id>class>標(biāo)簽選擇
后者優(yōu)先級高
7、前端頁面有哪三層構(gòu)成,分別是什么?作用是什么?
答:結(jié)構(gòu)層HTML 表示層CSS 行為層JS
8、你做的頁面在哪些瀏覽器測試過?這些瀏覽器的內(nèi)核分別是什么? 答:Ie(Ie內(nèi)核)
火狐(Gecko)
谷歌(webkit)
opear(Presto)
9、img標(biāo)簽上title與 alt屬性的區(qū)別是什么?
答:Alt當(dāng)圖片不顯示時,用文字代表
Title為該屬性提供信息。
10、描述CSS Reset的作用和用途
答:Reset重置瀏覽器的CSS默認(rèn)屬性 瀏覽器的品種不同,樣式不同,然后重
置,讓他們統(tǒng)一。
11、http狀態(tài)碼有那些?分別代表是什么意思?
100-199 用于指定客戶端應(yīng)響應(yīng)的某些動作。
200-299 用于表示請求成功。
300-399 用于已經(jīng)移動的文件并且常被包含在定位頭信息中指定新的地址信息。 400-499 用于指出客戶端的錯誤。
400 語義有誤,當(dāng)前請求無法被服務(wù)器理解。
401 當(dāng)前請求需要用戶驗證
403 服務(wù)器已經(jīng)理解請求,但是拒絕執(zhí)行它。
500-599 用于支持服務(wù)器錯誤。
503 – 服務(wù)不可用
13.解釋css sprites,如何使用。
Css 精靈 把一堆小的圖片整合到一張大的圖片上,減輕服務(wù)器對圖片的請求數(shù)量
14.瀏覽器標(biāo)準(zhǔn)模式和怪異模式之間的區(qū)別是什么?
盒子模型 渲染模式的不同
使用 window.top.document.compatMode 可顯示為什么模式
15.你如何對網(wǎng)站的文件和資源進行優(yōu)化?期待的解決方案包括:
文件合并
文件最小化/文件壓縮
使用CDN托管
緩存的使用
16.什么是語義化的HTML?
直觀的認(rèn)識標(biāo)簽 對于搜索引擎的抓取有好處
17.清除浮動的幾種方式,各自的優(yōu)缺點
1.使用空標(biāo)簽清除浮動 clear:both(理論上能清楚任何標(biāo)簽,增加無意義的標(biāo)簽)
2.使用overflow:auto(空標(biāo)簽元素清除浮動而不得不增加無意代碼的弊端,,使用zoom:1用于兼容IE)
3.是用afert偽元素清除浮動(用于非IE瀏覽器)
18.css hack
_marging \IE 6
+margin \IE 7
Marging:0 auto 所有Ie
Margin
前端開發(fā)面試題及答案整理
想要應(yīng)聘前端開發(fā)的求職者,要做好完成面試題的準(zhǔn)備。下面是由學(xué)習(xí)啦小編分享的前端開發(fā)面試題及答案,希望對你有用。
前端開發(fā)面試題及答案
1、對Web標(biāo)準(zhǔn)以及W3C的理解與認(rèn)識?
答:標(biāo)簽閉合、標(biāo)簽小寫、不亂嵌套、提高搜索機器人搜索幾率、使用外鏈CSS和JS腳本、結(jié)構(gòu)行為表現(xiàn)的分離、文件下載與頁面速度更快、內(nèi)容能被更多的用戶所訪問、內(nèi)容能被更廣泛的設(shè)備所訪問、更少的代碼和組件、容易維護、改版方便,不需要變動頁面內(nèi)容、提供打印版本而水需要復(fù)制內(nèi)容、提高網(wǎng)站易用性。
2、XHTML和HTML有什么區(qū)別?
答:HTML是一種基本的WEB網(wǎng)頁設(shè)計語言,XHTML是一個基于XML的置標(biāo)語言 最主要的不同:
XHTML元素必須被正確地嵌套;
XHTML元素必須被關(guān)閉;
標(biāo)簽名必須用小寫字母;
XHTML文檔必須擁有根元素。
3、Doctype?嚴(yán)格模式與混雜模式-如何觸發(fā)這兩種模式,區(qū)分它們有何意義? 答:Doctype用于聲明文檔使用哪種規(guī)范(HTML/XHTML)
該標(biāo)簽可聲明三種DTD類型,分別為嚴(yán)格版本、過度版本以及基于框架的HTML文檔。
加入XML聲明可觸發(fā),解析方式更改為IE5.5擁有IE5.5的bug。
4、行內(nèi)元素有哪些?塊級元素有哪些?CSS的盒模型?
答:行內(nèi)元素:a b br i span input select
塊級元素:div p h1 h2 h3 h4 form ul
CSS盒模型:內(nèi)容,border margin padding
5、CSS引入的方式有哪些?link和@import的區(qū)別是?
答:方式:內(nèi)聯(lián) 內(nèi)嵌 外鏈 導(dǎo)入
區(qū)別:同時加載
前者無兼容性,后者CSS2.1以下瀏覽器不支持
Link支持使用javascript 改變樣式,后者不可。
6.CSS選擇符有哪些?哪些屬性可以繼承?優(yōu)先級算法如何計算?內(nèi)聯(lián)和important哪個優(yōu)先級高?
答:標(biāo)簽選擇符、類選擇符、id選擇符
繼承不如指定 id>class>標(biāo)簽選擇
后者優(yōu)先級高
7、前端頁面有哪三層構(gòu)成,分別是什么?作用是什么?
答:結(jié)構(gòu)層HTML 表示層CSS 行為層JS
8、你做的頁面在哪些瀏覽器測試過?這些瀏覽器的內(nèi)核分別是什么? 答:Ie(Ie內(nèi)核)
火狐(Gecko)
谷歌(webkit)
opear(Presto)
9、img標(biāo)簽上title與 alt屬性的區(qū)別是什么?
答:Alt當(dāng)圖片不顯示時,用文字代表
Title為該屬性提供信息。
10、描述CSS Reset的作用和用途
答:Reset重置瀏覽器的CSS默認(rèn)屬性 瀏覽器的品種不同,樣式不同,然后重
置,讓他們統(tǒng)一。
11、http狀態(tài)碼有那些?分別代表是什么意思?
100-199 用于指定客戶端應(yīng)響應(yīng)的某些動作。
200-299 用于表示請求成功。
300-399 用于已經(jīng)移動的文件并且常被包含在定位頭信息中指定新的地址信息。 400-499 用于指出客戶端的錯誤。
400 語義有誤,當(dāng)前請求無法被服務(wù)器理解。
401 當(dāng)前請求需要用戶驗證
403 服務(wù)器已經(jīng)理解請求,但是拒絕執(zhí)行它。
500-599 用于支持服務(wù)器錯誤。
503 – 服務(wù)不可用
13.解釋css sprites,如何使用。
Css 精靈 把一堆小的圖片整合到一張大的圖片上,減輕服務(wù)器對圖片的請求數(shù)量
14.瀏覽器標(biāo)準(zhǔn)模式和怪異模式之間的區(qū)別是什么?
盒子模型 渲染模式的不同
使用 window.top.document.compatMode 可顯示為什么模式
15.你如何對網(wǎng)站的文件和資源進行優(yōu)化?期待的解決方案包括:
文件合并
文件最小化/文件壓縮
使用CDN托管
緩存的使用
16.什么是語義化的HTML?
直觀的認(rèn)識標(biāo)簽 對于搜索引擎的抓取有好處
17.清除浮動的幾種方式,各自的優(yōu)缺點
1.使用空標(biāo)簽清除浮動 clear:both(理論上能清楚任何標(biāo)簽,增加無意義的標(biāo)簽)
2.使用overflow:auto(空標(biāo)簽元素清除浮動而不得不增加無意代碼的弊端,,使用zoom:1用于兼容IE)
3.是用afert偽元素清除浮動(用于非IE瀏覽器)
18.css hack
_marging \\IE 6
+margin \\IE 7
Marging:0 auto \9 所有Ie
Margin \0 \\IE 8
前端開發(fā)面試題之Javascript部分
1.javascript的typeof返回哪些數(shù)據(jù)類型
Object number function boolean underfind
2.例舉3種強制類型轉(zhuǎn)換和2種隱式類型轉(zhuǎn)換?
強制(parseInt,parseFloat,number)
隱式(== – ===)
3.split() join() 的區(qū)別
前者是切割成數(shù)組的形式,后者是將數(shù)組轉(zhuǎn)換成字符串
4.數(shù)組方法pop() push() unshift() shift()
Push()尾部添加 pop()尾部刪除
Unshift()頭部添加 shift()頭部刪除
5.事件綁定和普通事件有什么區(qū)別
6.IE和DOM事件流的區(qū)別
1.執(zhí)行順序不一樣、
2.參數(shù)不一樣
3.事件加不加on
4.this指向問題
7.IE和標(biāo)準(zhǔn)下有哪些兼容性的寫法
Var ev = ev || window.event
document.documentElement.clientWidth || document.body.clientWidth
Var target = ev.srcElement||ev.target
8.ajax請求的時候get 和post方式的區(qū)別
一個在url后面 一個放在虛擬載體里面
有大小限制
安全問題
應(yīng)用不同 一個是論壇等只需要請求的,一個是類似修改密碼的
9.call和apply的區(qū)別
Object.call(this,obj1,obj2,obj3)
Object.apply(this,arguments)
10.ajax請求時,如何解釋json數(shù)據(jù)
使用eval parse 鑒于安全性考慮 使用parse更靠譜
11.b繼承a的方法
12.JavaScript this指針、閉包、作用域
13.事件委托是什么
讓利用事件冒泡的原理,讓自己的所觸發(fā)的事件,讓他的父元素代替執(zhí)行!
14.閉包是什么,有什么特性,對頁面有什么影響
閉包就是能夠讀取其他函數(shù)內(nèi)部變量的函數(shù)。
15.如何阻止事件冒泡和默認(rèn)事件
canceBubble return false
16.添加 刪除 替換 插入到某個接點的方法
obj.appendChidl()
obj.innersetBefore
obj.replaceChild
obj.removeChild
17.解釋jsonp的原理,以及為什么不是真正的ajax
動態(tài)創(chuàng)建script標(biāo)簽,回調(diào)函數(shù)
Ajax是頁面無刷新請求數(shù)據(jù)操作
18.javascript的本地對象,內(nèi)置對象和宿主對象
本地對象為array obj regexp等可以new實例化
內(nèi)置對象為gload Math 等不可以實例化的
宿主為瀏覽器自帶的document,window 等
19.document load 和document ready的區(qū)別
Document.onload 是在結(jié)構(gòu)和樣式加載完才執(zhí)行js
Document.ready原生種沒有這個方法,jquery中有 $().ready(function)
20.”==”和“===”的不同
前者會自動轉(zhuǎn)換類型
后者不會
21.javascript的同源策略
一段腳本只能讀取來自于同一來源的窗口和文檔的屬性,這里的同一來源指的是主機名、協(xié)議和端口號的組合
面試web前端研發(fā)應(yīng)該注意什么
1、了解公司
俗話說“知己知彼,方能百戰(zhàn)百勝”我們在面試之前需要對公司有所了解,現(xiàn)在的公司尤其是互聯(lián)網(wǎng)公司都在網(wǎng)上有自己的網(wǎng)站的,如果搜索不到,可能這個公司比較小
2、學(xué)會取舍
當(dāng)我們收到應(yīng)聘公司的HR打來的電話時,可以簡單的詢問一下公司的待遇,如果符合自己的理想要求就去面試,否則直接回絕
3、找好路線
我們應(yīng)該在HR打電話通知去面試后,及時的查找到應(yīng)聘公司的路線,包括公交車路線和自駕車路線
4、攜帶簡歷
我們最好攜帶一份簡單的個人簡歷去面試,雖然去面試時一般會讓你再次寫一份個人簡歷,但是我們還是要拿一份已經(jīng)寫好的簡歷,簡歷盡量做的簡單明了。
5、準(zhǔn)備筆試
在北京等城市的大型公司,我們?nèi)ッ嬖嚂r,會先讓我們做一套筆試題,試題可能和我們的工作內(nèi)容部分相關(guān),這就需要我們提前在網(wǎng)上找到一些公司的面試題,提前看一下。
6、準(zhǔn)備上機操作
小編去面試時,遇到上機操作的情況多一些,一般是要求我們在一個小時內(nèi),將一張圖片進行切圖并生成html文件。個人建議,我們可以提前一兩天專門訓(xùn)練一下自己這方面的技能
7、沉著應(yīng)對提問
我們在回答hr或者技術(shù)負(fù)責(zé)人的問題時,應(yīng)該沉著應(yīng)對,不慌不忙,把自己最好的一面展示給對方。
看過“前端開發(fā)面試題及答案”的人還看了:
前端開發(fā)面試題之Javascript部分
1.javascript的typeof返回哪些數(shù)據(jù)類型
Object number function boolean underfind
2.例舉3種強制類型轉(zhuǎn)換和2種隱式類型轉(zhuǎn)換?
強制(parseInt,parseFloat,number)
隱式(== – ===)
3.split() join() 的區(qū)別
前者是切割成數(shù)組的形式,后者是將數(shù)組轉(zhuǎn)換成字符串
4.數(shù)組方法pop() push() unshift() shift()
Push()尾部添加 pop()尾部刪除
Unshift()頭部添加 shift()頭部刪除
5.事件綁定和普通事件有什么區(qū)別
6.IE和DOM事件流的區(qū)別
1.執(zhí)行順序不一樣、
2.參數(shù)不一樣
3.事件加不加on
4.this指向問題
7.IE和標(biāo)準(zhǔn)下有哪些兼容性的寫法
Var ev = ev || window.event
document.documentElement.clientWidth || document.body.clientWidth
Var target = ev.srcElement||ev.target
8.ajax請求的時候get 和post方式的區(qū)別
一個在url后面 一個放在虛擬載體里面
有大小限制
安全問題
應(yīng)用不同 一個是論壇等只需要請求的,一個是類似修改密碼的
9.call和apply的區(qū)別
Object.call(this,obj1,obj2,obj3)
Object.apply(this,arguments)
10.ajax請求時,如何解釋json數(shù)據(jù)
使用eval parse 鑒于安全性考慮 使用parse更靠譜
11.b繼承a的方法
12.JavaScript this指針、閉包、作用域
13.事件委托是什么
讓利用事件冒泡的原理,讓自己的所觸發(fā)的事件,讓他的父元素代替執(zhí)行!
14.閉包是什么,有什么特性,對頁面有什么影響
閉包就是能夠讀取其他函數(shù)內(nèi)部變量的函數(shù)。
15.如何阻止事件冒泡和默認(rèn)事件
canceBubble return false
16.添加 刪除 替換 插入到某個接點的方法
obj.appendChidl()
obj.innersetBefore
obj.replaceChild
obj.removeChild
17.解釋jsonp的原理,以及為什么不是真正的ajax
動態(tài)創(chuàng)建script標(biāo)簽,回調(diào)函數(shù)
Ajax是頁面無刷新請求數(shù)據(jù)操作
18.javascript的本地對象,內(nèi)置對象和宿主對象
本地對象為array obj regexp等可以new實例化
內(nèi)置對象為gload Math 等不可以實例化的
宿主為瀏覽器自帶的document,window 等
19.document load 和document ready的區(qū)別
Document.onload 是在結(jié)構(gòu)和樣式加載完才執(zhí)行js
Document.ready原生種沒有這個方法,jquery中有 $().ready(function)
20.”==”和“===”的不同
前者會自動轉(zhuǎn)換類型
后者不會
21.javascript的同源策略
一段腳本只能讀取來自于同一來源的窗口和文檔的屬性,這里的同一來源指的是主機名、協(xié)議和端口號的組合
面試web前端研發(fā)應(yīng)該注意什么
1、了解公司
俗話說“知己知彼,方能百戰(zhàn)百勝”我們在面試之前需要對公司有所了解,現(xiàn)在的公司尤其是互聯(lián)網(wǎng)公司都在網(wǎng)上有自己的網(wǎng)站的,如果搜索不到,可能這個公司比較小
2、學(xué)會取舍
當(dāng)我們收到應(yīng)聘公司的HR打來的電話時,可以簡單的詢問一下公司的待遇,如果符合自己的理想要求就去面試,否則直接回絕
3、找好路線
我們應(yīng)該在HR打電話通知去面試后,及時的查找到應(yīng)聘公司的路線,包括公交車路線和自駕車路線
4、攜帶簡歷
我們最好攜帶一份簡單的個人簡歷去面試,雖然去面試時一般會讓你再次寫一份個人簡歷,但是我們還是要拿一份已經(jīng)寫好的簡歷,簡歷盡量做的簡單明了。
5、準(zhǔn)備筆試
在北京等城市的大型公司,我們?nèi)ッ嬖嚂r,會先讓我們做一套筆試題,試題可能和我們的工作內(nèi)容部分相關(guān),這就需要我們提前在網(wǎng)上找到一些公司的面試題,提前看一下。
6、準(zhǔn)備上機操作
小編去面試時,遇到上機操作的情況多一些,一般是要求我們在一個小時內(nèi),將一張圖片進行切圖并生成html文件。個人建議,我們可以提前一兩天專門訓(xùn)練一下自己這方面的技能
7、沉著應(yīng)對提問
我們在回答hr或者技術(shù)負(fù)責(zé)人的問題時,應(yīng)該沉著應(yīng)對,不慌不忙,把自己最好的一面展示給對方。
看過“前端開發(fā)面試題及答案”的人還看了: