2019年上半年 web前端開(kāi)發(fā)工程師面試題

面試成功有很多因素,較大的公司的面試你通過(guò)對(duì)話(huà)會(huì)辨別你,是否是他們所需要的人,技術(shù)過(guò)硬是第二,人格人品是第一,你的簡(jiǎn)歷是否真實(shí),最好有一說(shuō)一,面千萬(wàn)人什么樣的小鬼頭人事都見(jiàn)過(guò),所以避免尷尬,三思而后行,畢竟地鐵路費(fèi)挺貴的,最后祝大家在有一個(gè)好的人品下做一個(gè)積極向上技術(shù)過(guò)硬的程序猿。謝謝

一、HTML 常見(jiàn)題目

01、Doctype作用?嚴(yán)格模式與混雜模式如何區(qū)分?它們有何意義?

02、HTML5 為什么只需要寫(xiě) ?

03、行內(nèi)元素有哪些?塊級(jí)元素有哪些? 空(void)元素有那些?

04、頁(yè)面導(dǎo)入樣式時(shí),使用link和@import有什么區(qū)別?

05、介紹一下你對(duì)瀏覽器內(nèi)核的理解?

06、常見(jiàn)的瀏覽器內(nèi)核有哪些?

07、html5有哪些新特性、移除了那些元素?如何處理HTML5新標(biāo)簽的瀏覽器兼容問(wèn)題?

08、如何區(qū)分 HTML 和 HTML5?

09、簡(jiǎn)述一下你對(duì)HTML語(yǔ)義化的理解?

10、HTML5的離線(xiàn)儲(chǔ)存怎么使用,工作原理能不能解釋一下?

11、瀏覽器是怎么對(duì)HTML5的離線(xiàn)儲(chǔ)存資源進(jìn)行管理和加載的呢?

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

13、iframe有那些缺點(diǎn)?

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

15、HTML5的form如何關(guān)閉自動(dòng)完成功能?

16、如何實(shí)現(xiàn)瀏覽器內(nèi)多個(gè)標(biāo)簽頁(yè)之間的通信? (阿里)

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

18、頁(yè)面可見(jiàn)性(Page Visibility)API 可以有哪些用途?

19、如何在頁(yè)面上實(shí)現(xiàn)一個(gè)圓形的可點(diǎn)擊區(qū)域?

20、實(shí)現(xiàn)不使用 border 畫(huà)出1px高的線(xiàn),在不同瀏覽器的Quirksmode和CSSCompat模式下都能保持同一效果。

21、網(wǎng)頁(yè)驗(yàn)證碼是干嘛的,是為了解決什么安全問(wèn)題?

22、tite與h1的區(qū)別、b與strong的區(qū)別、i與em的區(qū)別?

二、、CSS類(lèi)的題目

01、介紹一下標(biāo)準(zhǔn)的CSS的盒子模型?與低版本IE的盒子模型有什么不同的?

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

03、CSS優(yōu)先級(jí)算法如何計(jì)算?

04、CSS3新增偽類(lèi)有那些?

05、如何居中div?如何居中一個(gè)浮動(dòng)元素?如何讓絕對(duì)定位的div居中?

06、display有哪些值?說(shuō)明他們的作用。

07、position的值relative和absolute定位原點(diǎn)是?

08、CSS3有哪些新特性?

09、請(qǐng)解釋一下CSS3的Flexbox(彈性盒布局模型),以及適用場(chǎng)景?

10、用純CSS創(chuàng)建一個(gè)三角形的原理是什么?

11、一個(gè)滿(mǎn)屏 品 字布局 如何設(shè)計(jì)?

12、常見(jiàn)兼容性問(wèn)題?

13、li與li之間有看不見(jiàn)的空白間隔是什么原因引起的?有什么解決辦法?

14、經(jīng)常遇到的瀏覽器的兼容性有哪些?原因,解決方法是什么,常用hack的技巧 ?

15、為什么要初始化CSS樣式。

16、absolute的containing block計(jì)算方式跟正常流有什么不同?

17、CSS里的visibility屬性有個(gè)collapse屬性值是干嘛用的?在不同瀏覽器下以后什么區(qū)別?

18、position跟display、margin collapse、overflow、float這些特性相互疊加后會(huì)怎么樣?

19、對(duì)BFC規(guī)范(塊級(jí)格式化上下文:block formatting context)的理解?

20、CSS權(quán)重優(yōu)先級(jí)是如何計(jì)算的?

21、請(qǐng)解釋一下為什么會(huì)出現(xiàn)浮動(dòng)和什么時(shí)候需要清除浮動(dòng)?清除浮動(dòng)的方式

22、移動(dòng)端的布局用過(guò)媒體查詢(xún)嗎?

23、使用 CSS 預(yù)處理器嗎?喜歡那個(gè)?

24、CSS優(yōu)化、提高性能的方法有哪些?

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

26、在網(wǎng)頁(yè)中的應(yīng)該使用奇數(shù)還是偶數(shù)的字體?為什么呢?

27、margin和padding分別適合什么場(chǎng)景使用?

28、抽離樣式模塊怎么寫(xiě),說(shuō)出思路,有無(wú)實(shí)踐經(jīng)驗(yàn)?[阿里航旅的面試題]

29、元素豎向的百分比設(shè)定是相對(duì)于容器的高度嗎?

30、全屏滾動(dòng)的原理是什么?用到了CSS的那些屬性?

31、什么是響應(yīng)式設(shè)計(jì)?響應(yīng)式設(shè)計(jì)的基本原理是什么?如何兼容低版本的IE?

32、視差滾動(dòng)效果,如何給每頁(yè)做不同的動(dòng)畫(huà)?(回到頂部,向下滑動(dòng)要再次出現(xiàn),和只出現(xiàn)一次分別怎么做?)

33、::before 和 :after中雙冒號(hào)和單冒號(hào) 有什么區(qū)別?解釋一下這2個(gè)偽元素的作用。

34、如何修改chrome記住密碼后自動(dòng)填充表單的黃色背景 ?

35、你對(duì)line-height是如何理解的?

36、設(shè)置元素浮動(dòng)后,該元素的display值是多少?(自動(dòng)變成display:block)

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

38、讓頁(yè)面里的字體變清晰,變細(xì)用CSS怎么做?(-webkit-font-smoothing: antialiased;)

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

40、position:fixed;在android下無(wú)效怎么處理?

41、如果需要手動(dòng)寫(xiě)動(dòng)畫(huà),你認(rèn)為最小時(shí)間間隔是多久,為什么?(阿里)

42、display:inline-block 什么時(shí)候會(huì)顯示間隙?(攜程)

43、overflow: scroll時(shí)不能平滑滾動(dòng)的問(wèn)題怎么處理?

44、有一個(gè)高度自適應(yīng)的div,里面有兩個(gè)div,一個(gè)高度100px,希望另一個(gè)填滿(mǎn)剩下的高度。

45、png、jpg、gif 這些圖片格式解釋一下,分別什么時(shí)候用。有沒(méi)有了解過(guò)webp?

46、什么是Cookie 隔離?(或者說(shuō):請(qǐng)求資源的時(shí)候不要讓它帶cookie怎么做)

47、style標(biāo)簽寫(xiě)在body后與body前有什么區(qū)別?

三、JavaScript類(lèi)的題目

01、介紹JavaScript的基本數(shù)據(jù)類(lèi)型。

02、說(shuō)說(shuō)寫(xiě)JavaScript的基本規(guī)范?

03、JavaScript原型,原型鏈 ? 有什么特點(diǎn)?

04、JavaScript有幾種類(lèi)型的值?(堆:原始數(shù)據(jù)類(lèi)型和 棧:引用數(shù)據(jù)類(lèi)型),你能畫(huà)一下他們的內(nèi)存圖嗎?

05、Javascript如何實(shí)現(xiàn)繼承?

06、Javascript創(chuàng)建對(duì)象的幾種方式?

07、Javascript作用鏈域?

08、談?wù)凾his對(duì)象的理解。

09、eval是做什么的?

10、什么是window對(duì)象? 什么是document對(duì)象?

11、null,undefined的區(qū)別?

12、寫(xiě)一個(gè)通用的事件偵聽(tīng)器函數(shù)(機(jī)試題)。

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

14、關(guān)于事件,IE與火狐的事件機(jī)制有什么區(qū)別? 如何阻止冒泡?

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

16、javascript 代碼中的”use strict”;是什么意思 ? 使用它區(qū)別是什么?

17、如何判斷一個(gè)對(duì)象是否屬于某個(gè)類(lèi)?

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

19、用原生JavaScript的實(shí)現(xiàn)過(guò)什么功能嗎?

20、Javascript中,有一個(gè)函數(shù),執(zhí)行時(shí)對(duì)象查找時(shí),永遠(yuǎn)不會(huì)去查找原型,這個(gè)函數(shù)是?

21、對(duì)JSON的了解?

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

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

24、Ajax 是什么? 如何創(chuàng)建一個(gè)Ajax?

25、同步和異步的區(qū)別?

26、如何解決跨域問(wèn)題?

27、頁(yè)面編碼和被請(qǐng)求的資源編碼如果不一致如何處理?

28、模塊化開(kāi)發(fā)怎么做?

29、AMD(Modules/Asynchronous-Definition)、CMD(Common Module Definition)規(guī)范區(qū)別?

30、requireJS的核心原理是什么?(如何動(dòng)態(tài)加載的?如何避免多次加載的?如何 緩存的?)

31、讓你自己設(shè)計(jì)實(shí)現(xiàn)一個(gè)requireJS,你會(huì)怎么做?

32、談一談你對(duì)ECMAScript6的了解?

33、ECMAScript6 怎么寫(xiě)class么,為什么會(huì)出現(xiàn)class這種東西?

34、異步加載的方式有哪些?

35、documen.write和 innerHTML的區(qū)別?

36、DOM操作——怎樣添加、移除、移動(dòng)、復(fù)制、創(chuàng)建和查找節(jié)點(diǎn)?

37、.call() 和 .apply() 的含義和區(qū)別?

38、數(shù)組和對(duì)象有哪些原生方法,列舉一下?

39、JS 怎么實(shí)現(xiàn)一個(gè)類(lèi)。怎么實(shí)例化這個(gè)類(lèi)

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

41、如何編寫(xiě)高性能的Javascript?

42、那些操作會(huì)造成內(nèi)存泄漏?

43、JQuery的源碼看過(guò)嗎?能不能簡(jiǎn)單概況一下它的實(shí)現(xiàn)原理?

44、jQuery.fn的init方法返回的this指的是什么對(duì)象?為什么要返回this?

45、jquery中如何將數(shù)組轉(zhuǎn)化為json字符串,然后再轉(zhuǎn)化回來(lái)?

46、jQuery 的屬性拷貝(extend)的實(shí)現(xiàn)原理是什么,如何實(shí)現(xiàn)深拷貝?

47、jquery.extend 與 jquery.fn.extend的區(qū)別?

48、jQuery 的隊(duì)列是如何實(shí)現(xiàn)的?隊(duì)列可以用在哪些地方?

49、談一下Jquery中的bind(),live(),delegate(),on()的區(qū)別?

50、JQuery一個(gè)對(duì)象可以同時(shí)綁定多個(gè)事件,這是如何實(shí)現(xiàn)的?

51、是否知道自定義事件。jQuery里的fire函數(shù)是什么意思,什么時(shí)候用?

52、jQuery 是通過(guò)哪個(gè)方法和 Sizzle 選擇器結(jié)合的?(jQuery.fn.find()進(jìn)入Sizzle)

53、針對(duì) jQuery性能的優(yōu)化方法?

54、Jquery與jQuery UI有啥區(qū)別?

55、JQuery的源碼看過(guò)嗎?能不能簡(jiǎn)單說(shuō)一下它的實(shí)現(xiàn)原理?

56、jquery 中如何將數(shù)組轉(zhuǎn)化為json字符串,然后再轉(zhuǎn)化回來(lái)?

57、jQuery和Zepto的區(qū)別?各自的使用場(chǎng)景?

58、針對(duì) jQuery 的優(yōu)化方法?

59、Zepto的點(diǎn)透問(wèn)題如何解決?

60、jQueryUI如何自定義組件?

61、需求:實(shí)現(xiàn)一個(gè)頁(yè)面操作不會(huì)整頁(yè)刷新的網(wǎng)站,并且能在瀏覽器前進(jìn)、后退時(shí)正確響應(yīng)。給出你的技術(shù)實(shí)現(xiàn)方案?

62、如何判斷當(dāng)前腳本運(yùn)行在瀏覽器還是node環(huán)境中?(阿里)

63、移動(dòng)端最小觸控區(qū)域是多大?

64、jQuery 的 slideUp動(dòng)畫(huà) ,如果目標(biāo)元素是被外部事件驅(qū)動(dòng), 當(dāng)鼠標(biāo)快速地連續(xù)觸發(fā)外部元素事件, 動(dòng)畫(huà)會(huì)滯后的反復(fù)執(zhí)行,該如何處理呢?

65、把 Script 標(biāo)簽 放在頁(yè)面的最底部的body封閉之前 和封閉之后有什么區(qū)別?瀏覽器會(huì)如何解析它們?

66、移動(dòng)端的點(diǎn)擊事件的有延遲,時(shí)間是多久,為什么會(huì)有? 怎么解決這個(gè)延時(shí)?(click 有 300ms 延遲,為了實(shí)現(xiàn)safari的雙擊事件的設(shè)計(jì),瀏覽器要知道你是不是要雙擊操作。)

67、知道各種JS框架(Angular, Backbone, Ember, React, Meteor, Knockout…)么? 能講出他們各自的優(yōu)點(diǎn)和缺點(diǎn)么?

68、Underscore 對(duì)哪些 JS 原生對(duì)象進(jìn)行了擴(kuò)展以及提供了哪些好用的函數(shù)方法?

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

70、那些操作會(huì)造成內(nèi)存泄漏?

71、JQuery一個(gè)對(duì)象可以同時(shí)綁定多個(gè)事件,這是如何實(shí)現(xiàn)的?

72、Node.js的適用場(chǎng)景?(如果會(huì)用node)知道route, middleware, cluster, nodemon, pm2, server-side rendering么?

73、解釋一下 Backbone 的 MVC 實(shí)現(xiàn)方式?

74、什么是“前端路由”?什么時(shí)候適合使用“前端路由”? “前端路由”有哪些優(yōu)點(diǎn)和缺點(diǎn)?

75、知道什么是webkit么? 知道怎么用瀏覽器的各種工具來(lái)調(diào)試和debug代碼么?

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

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

78、簡(jiǎn)述一下 Handlebars 的基本用法?

79、簡(jiǎn)述一下 Handlerbars 的對(duì)模板的基本處理流程, 如何編譯的?如何緩存的?

80、用js實(shí)現(xiàn)千位分隔符?(來(lái)源:前端農(nóng)民工,提示:正則+replace)

81、檢測(cè)瀏覽器版本版本有哪些方式?

82、我們給一個(gè)dom同時(shí)綁定兩個(gè)點(diǎn)擊事件,一個(gè)用捕獲,一個(gè)用冒泡,你來(lái)說(shuō)下會(huì)執(zhí)行幾次事件,然后會(huì)先執(zhí)行冒泡還是捕獲。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前端開(kāi)發(fā)面試題 面試題目: 根據(jù)你的等級(jí)和職位的變化,入門(mén)級(jí)到專(zhuān)家級(jí),廣度和深度都會(huì)有所增加。 題目類(lèi)型: 理論知...
    怡寶丶閱讀 2,683評(píng)論 0 7
  • 請(qǐng)參看我github中的wiki,不定期更新。https://github.com/ivonzhang/Front...
    zhangivon閱讀 7,763評(píng)論 2 19
  • 一、理論基礎(chǔ)知識(shí)部分 1.1、講講輸入完網(wǎng)址按下回車(chē),到看到網(wǎng)頁(yè)這個(gè)過(guò)程中發(fā)生了什么 a. 域名解析 b. 發(fā)起T...
    我家媳婦蠢蠢噠閱讀 3,247評(píng)論 2 106
  • HTML Doctype作用?嚴(yán)格模式與混雜模式如何區(qū)分?它們有何意義? HTML5 為什么只需要寫(xiě) <!DOCT...
    sidney_c閱讀 2,906評(píng)論 3 54
  • 去年三月決定考研,七月中旬才有時(shí)間開(kāi)始準(zhǔn)備考研初試。 別人都在討論一輪復(fù)習(xí)已經(jīng)快結(jié)束了,我卻在想著怎么能在一個(gè)月內(nèi)...
    橙洋閱讀 4,294評(píng)論 45 108

友情鏈接更多精彩內(nèi)容