- 相關推薦
前端開發面試題及答案
在社會的各個領域,我們總免不了要接觸或使用試題,試題是命題者根據測試目標和測試事項編寫出來的。什么樣的試題才是科學規范的試題呢?下面是小編為大家整理的前端開發面試題及答案,歡迎大家借鑒與參考,希望對大家有所幫助。
前端開發面試題及答案
前端開發面試題及答案
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
前端開發面試題之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的同源策略
一段腳本只能讀取來自于同一來源的窗口和文檔的屬性,這里的同一來源指的是主機名、協議和端口號的組合
前端開發面試問答
Q:關于公司的期望
A:我希望第一份工作能有比較大的發展空間,能夠長時間的在一個良好的環境中養成良好的習慣。
Q:大學時經歷的團隊合作
A:最初的時候誰也不知道應該做什么,就從理論上一點一點的摳出東西來,經過兩三次的課程我們的固定團隊大致有了自己的開發流程,知道怎么樣進行相互間的交流溝通、協作,也能從其他團隊的匯報中吸取很多經驗與教訓。有的時候我們團隊里會加進比較牛的高人,他也會愿意對我們進行額外的指導,大家一起交流想法,各自說出來,再一起逐一分析優劣,最終定下方案。
Q:關于前端的理解
A:前端開發處于一個猛烈發展的階段,現在可以說大部分的網站都在關注前端,前端是直接接觸用戶的部分,它融合了設計、程序還有一些整體的理念,一些優化,包括SEO。很多技術的實現都要通過前端,怎么把這部分做好是非常具有挑戰性的事情。可能四五年前很多人都還在標準的實現上摸索,而現在有一個大家都朝著標準走的大方向,就能夠更好的堅持,更好的專注,把前端技術做得更強大。
Q:自己的發展計劃
A:剛畢業的這一兩年希望能專注于技術的提高,和適應良好的工作流程――這也是為什么我希望能夠在一個發展環境良好的公司工作,鍛煉好實踐能力,結合公司的產品需求,當然還有一些不斷萌發的新技術。之后會向產品的方向發展,就是前端技術所要實現的目標,因為前端確實是結合很廣闊的一個職位。
Q:優缺點
A:我的優點,自己覺得是比較細心,包括細致的觀察還有處理細節上的事情。我之前在365日歷網實習的時候,還有課程小組學習的時候,他們評價我會說我比較可靠,我覺得可能不是那種技術上特別牛什么問題都能解決的,我個人覺得是來自細心和認真負責的態度。另外后面在九星時代實習的時候,臨走上司對我評價是說我抗壓學習能力比較強。當時項目特別急,又有涉及到一些我還不熟悉的技術,所有人都在加班,我也是一邊完成任務一邊不斷在學新的東西,進一步的修繕,把事情做得更好。缺點的話,我覺得現在對我影響最大的就是想問題常常會有太多顧慮,想要一次性的把問題解決,結果會浪費很多的時間。比如說技術面試的時候,很經常遇到考官說一個簡單的布局設計讓你實現,我有的時候就總會考慮一些沒有提到的因素,像是否需要適應變化這類的,就是有些過于計較完美,反而變得優柔寡斷了。這也是有次面試的時候面試官和我提到的。
Q:待遇要求
A:待遇的話,我覺得并不是很關鍵,而且我是應屆生,我尊重公司對應屆生的待遇標準。我也相信網易的競爭力吧。這幾次面試后,我在網上查了不少別人的評價,覺得網易作為大門戶網站,有很好的環境與發展前景,薪水的話能讓自己繼續活著工作學習發展就夠啦。我
一直認為如果公司發展前景不好,現在給很高的工資也不一定就是好事情,而好的公司能夠給出符合員工給自己所創造的價值的工資。
3號(周四)下午,面試的時候HR羅叔叔非常溫和,常常笑,說話也不是我想象中HR那種咄咄逼人的語速。問我的問題大約是:
Q:自我介紹包括實習經歷
A:如實匯報
Q:面對過什么樣的壓力
A:我先是很宓乃盜搜數學的事情,后來HR又問,還有其他的嗎,我又說了一下做一些課程設計的時候小組遇到的難題,技術和團隊協作方面。其實還想說在九星實習的時候的工作壓力,后來覺得這個才是HR最想聽的,不過沒有機會說了……
Q:解決問題的方法
A:技術問題的話,先上網查有沒有解決的方法,如果不好解決再去請教前輩,一般還是自己先查一些資料,不想為簡單的問題就打擾別人。如果遇到難以解決的問題會請教別人或者和別人一起討論。這塊回答得有點亂。
Q:為什么想留在北京
A:家里人也希望我能夠獨立,能夠做自己喜歡的事情,在廣闊的空間里發展。我自己也覺得北京機會更多。我說完HR叔叔還跟著說了一句,確實比如你在福州,不要說福州吧,就算和上海深圳這樣的技術發達城市比,確實北京的機會是更多的。
Q:拿過其他公司的offer嗎?覺得和其他公司比,網易好在哪里?
A:有過一些,自己不滿意的地方,一種是職位不是自己期望的,比如測試或者技術支持,并不是自己第一想要做的事情,我很喜歡前端,也希望自己能在這個領域發展;還有是公司規模不大,像之前HR說的,在網易會有很多個前端工程師來完成一個大任務,我認為這樣更能夠發揮自己的力量,也能讓自己的能力更好的發展,如果在一個小一些的公司,也許做前端的就只有我一個人,發展就會變得狹隘;還有工資問題,有的公司只給出兩千五左右的待遇(我沒敢說2000,其實之前確實有給我開2000的,怕被HR叔叔鄙視),這樣在北京生活會艱難一些。總的還是覺得發展前景很重要。然后HR叔叔就接過話說網易確實有很大的發展空間,而且工資的話我看你在登記表上寫的跨度很大(我寫的是3000-5000,遵從公司對應屆生的薪酬標準),這點網易肯定能夠讓你滿意的。
Q:描述一下你的性格
A:這是我認為我回答得最失敗的一個問題,我當時沒多想,脫口而出――我性格比較內向,其實我應該說我溫柔善良細心負責,之前想了很多關于優缺點的描述,結果也不曉得哪根筋抽抽了,直接說自己內向,接著羞澀的笑笑,接了一句不過我很喜歡和別人討論問題,覺得一起解決問題是很開心的事情
【前端開發面試題及答案】相關文章:
前端開發的面試題04-22
web前端js面試題及參考答案08-26
PHP前端開發中的性能05-25
網頁設計前端面試題集合11-08
Java開發崗位面試題06-17
網頁設計和web前端開發哪個好09-20
Java開發崗位面試題匯總06-30
精選php面試題及答案06-01
PHP面試題及答案06-27