更多課程 選擇中心

Web培訓
美國上市教育機構

400-111-8989

Web培訓

2020年Web前端工程師面試題集錦

  • 發布:Web前端培訓
  • 來源:web前端面試
  • 時間:2020-06-09 14:23

今天小編要跟大家分享的文章是關于2020年Web前端工程師面試題集錦。準備參加Web前端工程師面試的小伙伴們來和小編一起看一看吧,希望本篇文章能夠對大家有所幫助。

2020年<a style='color:blue' href='http://www.hfdlgcj.com/'>web前端</a>工程師面試題集錦

一、HTML

§ Doctype作用?嚴格模式與混雜模式如何區分?它們有何意義?

§ HTML5 為什么只需要寫 <!DOCTYPE HTML>?

§ 行內元素有哪些?塊級元素有哪些?空(void)元素有那些?

§ 頁面導入樣式時,使用link和@import有什么區別?

§ 介紹一下你對瀏覽器內核的理解?

§ 常見的瀏覽器內核有哪些?

§ html5有哪些新特性、移除了那些元素?如何處理HTML5新標簽的瀏覽器兼容問題?如何區分 HTML 和 HTML5?

§ 簡述一下你對HTML語義化的理解?

§ HTML5的離線儲存怎么使用,工作原理能不能解釋一下?

§ 瀏覽器是怎么對HTML5的離線儲存資源進行管理和加載的呢?

§ 請描述一下 cookies,sessionStorage 和 localStorage 的區別?

§ iframe有那些缺點?

§ Label的作用是什么?是怎么用的?(加 for 或 包裹)

§ HTML5的form如何關閉自動完成功能?

§ 如何實現瀏覽器內多個標簽頁之間的通信? (阿里)

§ webSocket如何兼容低瀏覽器?(阿里)

§ 頁面可見性(Page Visibility)API 可以有哪些用途?

§ 如何在頁面上實現一個圓形的可點擊區域?

§ 實現不使用 border 畫出1px高的線,在不同瀏覽器的Quirksmode和CSSCompat模式下都能保持同一效果。

§ 網頁驗證碼是干嘛的,是為了解決什么安全問題?

§ tite與h1的區別、b與strong的區別、i與em的區別?

二、CSS

§ 介紹一下標準的CSS的盒子模型?與低版本IE的盒子模型有什么不同的?

§ CSS選擇符有哪些?哪些屬性可以繼承?

§ CSS優先級算法如何計算?

§ CSS3新增偽類有那些?

§ 如何居中div?如何居中一個浮動元素?如何讓絕對定位的div居中?

§ display有哪些值?說明他們的作用。

§ position的值relative和absolute定位原點是?

§ CSS3有哪些新特性?

§ 請解釋一下CSS3的Flexbox(彈性盒布局模型),以及適用場景?

§ 用純CSS創建一個三角形的原理是什么?

§ 一個滿屏 品 字布局 如何設計?

§ 常見兼容性問題?

§ li與li之間有看不見的空白間隔是什么原因引起的?有什么解決辦法?

§ 經常遇到的瀏覽器的兼容性有哪些?原因,解決方法是什么,常用hack的技巧 ?

§ 為什么要初始化CSS樣式。

§ absolute的containing block計算方式跟正常流有什么不同?

§ CSS里的visibility屬性有個collapse屬性值是干嘛用的?在不同瀏覽器下以后什么區別?

§ position跟display、margin collapse、overflow、float這些特性相互疊加后會怎么樣?

§ 對BFC規范(塊級格式化上下文:block formatting context)的理解?

§ CSS權重優先級是如何計算的?

§ 請解釋一下為什么會出現浮動和什么時候需要清除浮動?清除浮動的方式

§ 移動端的布局用過媒體查詢嗎?

§ 使用 CSS 預處理器嗎?喜歡那個?

§ CSS優化、提高性能的方法有哪些?

§ 瀏覽器是怎樣解析CSS選擇器的?

§ 在網頁中的應該使用奇數還是偶數的字體?為什么呢?

§ margin和padding分別適合什么場景使用?

§ 抽離樣式模塊怎么寫,說出思路,有無實踐經驗?[阿里航旅的面試題]

§ 元素豎向的百分比設定是相對于容器的高度嗎?

§ 全屏滾動的原理是什么?用到了CSS的那些屬性?

§ 什么是響應式設計?響應式設計的基本原理是什么?如何兼容低版本的IE?

§ 視差滾動效果,如何給每頁做不同的動畫?(回到頂部,向下滑動要再次出現,和只出現一次分別怎么做?)

§ ::before 和 :after中雙冒號和單冒號 有什么區別?解釋一下這2個偽元素的作用。

§ 如何修改chrome記住密碼后自動填充表單的黃色背景 ?

§ 你對line-height是如何理解的?

§ 設置元素浮動后,該元素的display值是多少?(自動變成display:block)

§ 怎么讓Chrome支持小于12px 的文字?

§ 讓頁面里的字體變清晰,變細用CSS怎么做?(-webkit-font-smoothing: antialiased;)

§ font-style屬性可以讓它賦值為“oblique” oblique是什么意思?

§ position:fixed;在android下無效怎么處理?

§ 如果需要手動寫動畫,你認為最小時間間隔是多久,為什么?(阿里)

§ display:inline-block 什么時候會顯示間隙?(攜程)

§ overflow: scroll時不能平滑滾動的問題怎么處理?

§ 有一個高度自適應的div,里面有兩個div,一個高度100px,希望另一個填滿剩下的高度。

§ png、jpg、gif 這些圖片格式解釋一下,分別什么時候用。有沒有了解過webp?

§ 什么是Cookie 隔離?(或者說:請求資源的時候不要讓它帶cookie怎么做)

§ style標簽寫在body后與body前有什么區別?

三、JavaScript

§ 介紹JavaScript的基本數據類型。

§ 說說寫JavaScript的基本規范?

§ JavaScript原型,原型鏈 ? 有什么特點?

§ JavaScript有幾種類型的值?(堆:原始數據類型和 棧:引用數據類型),你能畫一下他們的內存圖嗎?

§ Javascript如何實現繼承?

§ Javascript創建對象的幾種方式?

§ Javascript作用鏈域?

§ 談談This對象的理解。

§ eval是做什么的?

§ 什么是window對象? 什么是document對象?

§ null,undefined的區別?

§ 寫一個通用的事件偵聽器函數(機試題)。

§ [“1”, “2”, “3”].map(parseInt) 答案是多少?

§ 關于事件,IE與火狐的事件機制有什么區別?如何阻止冒泡?

§ 什么是閉包(closure),為什么要用它?

§ javascript 代碼中的”use strict”;是什么意思 ? 使用它區別是什么?

§ 如何判斷一個對象是否屬于某個類?

§ new操作符具體干了什么呢?

§ 用原生JavaScript的實現過什么功能嗎?

§ Javascript中,有一個函數,執行時對象查找時,永遠不會去查找原型,這個函數是?

§ 對JSON的了解?

§ [].forEach.call($$("*"),function(a){ a.style.outline="1px solid #"+(~~(Math.random()*(1<<24))).toString(16) }) 能解釋一下這段代碼的意思嗎?

§ js延遲加載的方式有哪些?

§ Ajax 是什么? 如何創建一個Ajax?

§ 同步和異步的區別?

§ 如何解決跨域問題?

§ 頁面編碼和被請求的資源編碼如果不一致如何處理?

§ 模塊化開發怎么做?

§ AMD(Modules/Asynchronous-Definition)、CMD(Common Module Definition)規范區別?

§ requireJS的核心原理是什么?(如何動態加載的?如何避免多次加載的?如何 緩存的?)

§ 讓你自己設計實現一個requireJS,你會怎么做?

§ 談一談你對ECMAScript6的了解?

§ ECMAScript6 怎么寫class么,為什么會出現class這種東西?

§ 異步加載的方式有哪些?

§ documen.write和 innerHTML的區別?

§ DOM操作——怎樣添加、移除、移動、復制、創建和查找節點?

§ .call() 和 .apply() 的含義和區別?

§ 數組和對象有哪些原生方法,列舉一下?

§ JS 怎么實現一個類。怎么實例化這個類

§ JavaScript中的作用域與變量聲明提升?

§ 如何編寫高性能的Javascript?

§ 那些操作會造成內存泄漏?

§ JQuery的源碼看過嗎?能不能簡單概況一下它的實現原理?

§ jQuery.fn的init方法返回的this指的是什么對象?為什么要返回this?

§ jquery中如何將數組轉化為json字符串,然后再轉化回來?

§ jQuery 的屬性拷貝(extend)的實現原理是什么,如何實現深拷貝?

§ jquery.extend 與 jquery.fn.extend的區別?

§ jQuery 的隊列是如何實現的?隊列可以用在哪些地方?

§ 談一下Jquery中的bind(),live(),delegate(),on()的區別?

§ JQuery一個對象可以同時綁定多個事件,這是如何實現的?

§ 是否知道自定義事件。jQuery里的fire函數是什么意思,什么時候用?

§ jQuery 是通過哪個方法和 Sizzle 選擇器結合的?(jQuery.fn.find()進入Sizzle)

§ 針對 jQuery性能的優化方法?

§ Jquery與jQuery UI有啥區別?

§ JQuery的源碼看過嗎?能不能簡單說一下它的實現原理?

§ jquery 中如何將數組轉化為json字符串,然后再轉化回來?

§ jQuery和Zepto的區別?各自的使用場景?

§ 針對 jQuery 的優化方法?

§ Zepto的點透問題如何解決?

§ jQueryUI如何自定義組件?

§ 需求:實現一個頁面操作不會整頁刷新的網站,并且能在瀏覽器前進、后退時正確響應。給出你的技術實現方案?

§ 如何判斷當前腳本運行在瀏覽器還是node環境中?(阿里)

§ 移動端最小觸控區域是多大?

§ jQuery 的 slideUp動畫 ,如果目標元素是被外部事件驅動, 當鼠標快速地連續觸發外部元素事件, 動畫會滯后的反復執行,該如何處理呢?

§ 把 Script 標簽 放在頁面的最底部的body封閉之前 和封閉之后有什么區別?瀏覽器會如何解析它們?

§ 移動端的點擊事件的有延遲,時間是多久,為什么會有?怎么解決這個延時?(click 有 300ms 延遲,為了實現safari的雙擊事件的設計,瀏覽器要知道你是不是要雙擊操作。)

§ 知道各種JS框架(Angular, Backbone, Ember, React, Meteor, Knockout…)么? 能講出他們各自的優點和缺點么?

§ Underscore 對哪些 JS 原生對象進行了擴展以及提供了哪些好用的函數方法?

§ 解釋JavaScript中的作用域與變量聲明提升?

§ 那些操作會造成內存泄漏?

§ JQuery一個對象可以同時綁定多個事件,這是如何實現的?

§ Node.js的適用場景?

§ (如果會用node)知道route, middleware, cluster, nodemon, pm2, server-side rendering么?

§ 解釋一下 Backbone 的 MVC 實現方式?

§ 什么是“前端路由”?什么時候適合使用“前端路由”? “前端路由”有哪些優點和缺點?

§ 知道什么是webkit么? 知道怎么用瀏覽器的各種工具來調試和debug代碼么?

§ 如何測試前端代碼么? 知道BDD, TDD, Unit Test么? 知道怎么測試你的前端工程么(mocha, sinon, jasmin, qUnit..)?

§ 前端templating(Mustache, underscore, handlebars)是干嘛的, 怎么用?

§ 簡述一下 Handlebars 的基本用法?

§ 簡述一下 Handlerbars 的對模板的基本處理流程, 如何編譯的?如何緩存的?

§ 用js實現千位分隔符?(來源:前端農民工,提示:正則+replace)

§ 檢測瀏覽器版本版本有哪些方式?

§ 我們給一個dom同時綁定兩個點擊事件,一個用捕獲,一個用冒泡,你來說下會執行幾次事件,然后會先執行冒泡還是捕獲。

四、其他問題

§ 原來公司工作流程是怎么樣的,如何與其他人協作的?如何夸部門合作的?

§ 你遇到過比較難的技術問題是?你是如何解決的?

§ 設計模式 知道什么是singleton, factory, strategy, decrator么?

§ 常使用的庫有哪些?常用的前端開發工具?開發過什么應用或組件?

§ 頁面重構怎么操作?

§ 列舉IE與其他瀏覽器不一樣的特性?

§ 99%的網站都需要被重構是那本書上寫的?

§ 什么叫優雅降級和漸進增強?

§ 是否了解公鑰加密和私鑰加密。

§ WEB應用從服務器主動推送Data到客戶端有那些方式?

§ 對Node的優點和缺點提出了自己的看法?

§ 你有用過哪些前端性能優化的方法?

§ http狀態碼有那些?分別代表是什么意思?

§ 一個頁面從輸入 URL 到頁面加載顯示完成,這個過程中都發生了什么?(流程說的越詳細越好)

§ 部分地區用戶反應網站很卡,請問有哪些可能性的原因,以及解決方法?

§ 從打開app到刷新出內容,整個過程中都發生了什么,如果感覺慢,怎么定位問題,怎么解決?

§ 除了前端以外還了解什么其它技術么?你最最厲害的技能是什么?

§ 你用的得心應手用的熟練地編輯器&開發環境是什么樣子?

§ 對前端界面工程師這個職位是怎么樣理解的?它的前景會怎么樣?

§ 你怎么看待Web App 、hybrid App、Native App?

§ 你移動端前端開發的理解?(和 Web 前端開發的主要區別是什么?)

§ 你對加班的看法?

§ 平時如何管理你的項目?

§ 說說最近最流行的一些東西吧?常去哪些網站?

§ 如何設計突發大規模并發架構?

§ 說說最近最流行的一些東西吧?常去哪些網站?

§ 是否了解開源的工具 bower、npm、yeoman、grunt、gulp,一個 npm 的包里的 package.json 具備的必要的字段都有哪些?(名稱、版本號,依賴)

§ 每個模塊的代碼結構都應該比較簡單,且每個模塊之間的關系也應該非常清晰,隨著功能和迭代次數越來越多,你會如何去保持這個狀態的?

§ Git知道branch, diff, merge么?

§ 如何設計突發大規模并發架構?

§ 當團隊人手不足,把功能代碼寫完已經需要加班的情況下,你會做前端代碼的測試嗎?

§ 說說最近最流行的一些東西吧?平時常去哪些網站?

§ 知道什么是SEO并且怎么優化么? 知道各種meta data的含義么?

§ 移動端(Android IOS)怎么做好用戶體驗?

§ 簡單描述一下你做過的移動APP項目研發流程?

§ 你在現在的團隊處于什么樣的角色,起到了什么明顯的作用?

§ 你認為怎樣才是全端工程師(Full Stack developer)?

§ 介紹一個你最得意的作品吧?

§ 你有自己的技術博客嗎,用了哪些技術?

§ 對前端安全有什么看法?

§ 是否了解Web注入攻擊,說下原理,最常見的兩種攻擊(XSS 和 CSRF)了解到什么程度?

§ 項目中遇到國哪些印象深刻的技術難題,具體是什么問題,怎么解決?。

§ 最近在學什么東西?

§ 你的優點是什么?缺點是什么?

§ 如何管理前端團隊?

§ 最近在學什么?能談談你未來3,5年給自己的規劃嗎?

以上就是小編今天為大家分享的關于2020年web前端工程師面試題集錦的文章,希望本篇文章能夠對正準備參加web前端工程師面試的小伙伴們有所幫助,想要了解更多web前端面試題的小伙伴們記得關注達內web前端培訓官網,最后祝愿小伙伴們工作順利,成為一名優秀的web前端工程師。

【免責聲明:本文圖片及文字信息均由小編轉載自網絡,旨在分享提供閱讀,版權歸原作者所有,如有侵權請聯系我們進行刪除。】

預約申請免費試聽課

填寫下面表單即可預約申請免費試聽!怕錢不夠?可就業掙錢后再付學費! 怕學不會?助教全程陪讀,隨時解惑!擔心就業?一地學習,可全國推薦就業!

上一篇:2020年Web前端面試常見筆試題匯總
下一篇:2020年Web前端面試題匯總(二)

2020年Web前端面試題匯總(六)

2020年Web前端面試題匯總(五)

2020年Web前端面試題匯總(四)

2020年Web前端面試題匯總(三)

選擇城市和中心
黑龍江省

吉林省

河北省

貴州省

云南省

廣西省

海南省

欧美在线v中文字幕