查文庫>試題> 前端開發面試題及答案

前端開發面試題及答案

前端開發面試題及答案

  想要應聘前端開發的求職者,要做好完成面試題的準備。下面是由小編分享的前端開發面試題及答案,希望對你有用。

  前端開發面試題及答案

  1、對Web標準以及W3C的理解與認識?

  答:標籤閉合、標籤小寫、不亂巢狀、提高搜尋機器人搜尋機率、使用外鏈CSS和JS指令碼、結構行為表現的分離、檔案下載與頁面速度更快、內容能被更多的使用者所訪問、內容能被更廣泛的裝置所訪問、更少的程式碼和元件、容易維護、改版方便,不需要變動頁面內容、提供列印版本而水需要複製內容、提高網站易用性。

  2、XHTML和HTML有什麼區別?

  答:HTML是一種基本的WEB網頁設計語言,XHTML是一個基於XML的置標語言 最主要的不同:

  XHTML元素必須被正確地巢狀;

  XHTML元素必須被關閉;

  標籤名必須用小寫字母;

  XHTML文件必須擁有根元素。

  3、Doctype?嚴格模式與混雜模式-如何觸發這兩種模式,區分它們有何意義? 答:Doctype用於宣告文件使用哪種規範(HTML/XHTML)

  該標籤可宣告三種DTD型別,分別為嚴格版本、過度版本以及基於框架的HTML文件。

  加入XML宣告可觸發,解析方式更改為IE5.5擁有IE5.5的bug。

  4、行內元素有哪些?塊級元素有哪些?CSS的盒模型?

  答:行內元素:a b br i span input select

  塊級元素:div p h1 h2 h3 h4 form ul

  CSS盒模型:內容,border margin padding

  5、CSS引入的方式有哪些?link和@import的區別是?

  答:方式:內聯 內嵌 外鏈 匯入

  區別:同時載入

  前者無相容性,後者CSS2.1以下瀏覽器不支援

  Link支援使用javascript 改變樣式,後者不可。

  6.CSS選擇符有哪些?哪些屬性可以繼承?優先順序演算法如何計算?內聯和important哪個優先順序高?

  答:標籤選擇符、類選擇符、id選擇符

  繼承不如指定 id>class>標籤選擇

  後者優先順序高

  7、前端頁面有哪三層構成,分別是什麼?作用是什麼?

  答:結構層HTML 表示層CSS 行為層JS

  8、你做的頁面在哪些瀏覽器測試過?這些瀏覽器的核心分別是什麼? 答:Ie(Ie核心)

  火狐(Gecko)

  谷歌(webkit)

  opear(Presto)

  9、img標籤上title與 alt屬性的區別是什麼?

  答:Alt當圖片不顯示時,用文字代表

  Title為該屬性提供資訊。

  10、描述CSS Reset的作用和用途

  答:Reset重置瀏覽器的CSS預設屬性 瀏覽器的品種不同,樣式不同,然後重

  置,讓他們統一。

  11、http狀態碼有那些?分別代表是什麼意思?

  100-199 用於指定客戶端應響應的某些動作。

  200-299 用於表示請求成功。

  300-399 用於已經移動的檔案並且常被包含在定位頭資訊中指定新的地址資訊。 400-499 用於指出客戶端的錯誤。

  400 語義有誤,當前請求無法被伺服器理解。

  401 當前請求需要使用者驗證

  403 伺服器已經理解請求,但是拒絕執行它。

  500-599 用於支援伺服器錯誤。

  503 – 服務不可用

  13.解釋css sprites,如何使用。

  Css 精靈 把一堆小的圖片整合到一張大的圖片上,減輕伺服器對圖片的請求數量

  14.瀏覽器標準模式和怪異模式之間的區別是什麼?

  盒子模型 渲染模式的不同

  使用 window.top.document.compatMode 可顯示為什麼模式

  15.你如何對網站的檔案和資源進行最佳化?期待的解決方案包括:

  檔案合併

  檔案最小化/檔案壓縮

  使用CDN託管

  快取的使用

  16.什麼是語義化的HTML?

  直觀的認識標籤 對於搜尋引擎的抓取有好處

  17.清除浮動的幾種方式,各自的優缺點

  1.使用空標籤清除浮動 clear:both(理論上能清楚任何標籤,增加無意義的標籤)

  2.使用overflow:auto(空標籤元素清除浮動而不得不增加無意程式碼的弊端,,使用zoom:1用於相容IE)

  3.是用afert偽元素清除浮動(用於非IE瀏覽器)

  18.css hack

  _marging \IE 6

  +margin \IE 7

  Marging:0 auto 9 所有Ie

  Margin \IE 8

  前端開發面試題之Javascript部分

  1.javascript的.typeof返回哪些資料型別

  Object number function boolean underfind

  2.例舉3種強制型別轉換和2種隱式型別轉換?

  強制(parseInt,parseFloat,number)

  隱式(== – ===)

  3.split() join() 的區別

  前者是切割成陣列的形式,後者是將陣列轉換成字串

  4.陣列方法pop() push() unshift() shift()

  Push()尾部新增 pop()尾部刪除

  Unshift()頭部新增 shift()頭部刪除

  5.事件繫結和普通事件有什麼區別

  6.IE和DOM事件流的區別

  1.執行順序不一樣、

  2.引數不一樣

  3.事件加不加on

  4.this指向問題

  7.IE和標準下有哪些相容性的寫法

  Var ev = ev || window.event

  document.documentElement.clientWidth || document.body.clientWidth

  Var target = ev.srcElement||ev.target

  8.ajax請求的時候get 和post方式的區別

  一個在url後面 一個放在虛擬載體裡面

  有大小限制

  安全問題

  應用不同 一個是論壇等只需要請求的,一個是類似修改密碼的

  9.call和apply的區別

  Object.call(this,obj1,obj2,obj3)

  Object.apply(this,arguments)

  10.ajax請求時,如何解釋json資料

  使用eval parse 鑑於安全性考慮 使用parse更靠譜

  11.b繼承a的方法

  12.JavaScript this指標、閉包、作用域

  13.事件委託是什麼

  讓利用事件冒泡的原理,讓自己的所觸發的事件,讓他的父元素代替執行!

  14.閉包是什麼,有什麼特性,對頁面有什麼影響

  閉包就是能夠讀取其他函式內部變數的函式。

  15.如何阻止事件冒泡和預設事件

  canceBubble return false

  16.新增 刪除 替換 插入到某個接點的方法

  obj.appendChidl()

  obj.innersetBefore

  obj.replaceChild

  obj.removeChild

  17.解釋jsonp的原理,以及為什麼不是真正的ajax

  動態建立script標籤,回撥函式

  Ajax是頁面無重新整理請求資料操作

  18.javascript的本地物件,內建物件和宿主物件

  本地物件為array obj regexp等可以new例項化

  內建物件為gload Math 等不可以例項化的

  宿主為瀏覽器自帶的document,window 等

  19.document load 和document ready的區別

  Document.onload 是在結構和樣式載入完才執行js

  Document.ready原生種沒有這個方法,jquery中有 $().ready(function)

  20.”==”和“===”的不同

  前者會自動轉換型別

  後者不會

  21.javascript的同源策略

  一段指令碼只能讀取來自於同一來源的視窗和文件的屬性,這裡的同一來源指的是主機名、協議和埠號的組合