當前位置:首頁 » 操作系統 » 前端演算法面試題

前端演算法面試題

發布時間: 2022-05-26 16:07:06

⑴ 你遇到過哪些比較有水準的前端面試題

我原來面試工作時候,面試官出了一個這樣的題,題目是:我兒子叫你的兒子叫爸爸。當時我對於這個問題思考了很久。這個題目答案:是男問女的就是公公,女問女就是婆婆,男問男就是爸爸,女問男就是媽媽。這個題很好的考驗了面試者的邏輯思考能力,還有看待事物的全面性,非常不錯。

⑵ 前端面試題,求大佬給個結果

第一題 true false false true
第二題 true 報錯 false false true false
之前是為了趕著回答,所以隨便答了,後來檢查,發現也是對的了。後面說說分析:
第一個問題:
先分析最簡單的頁面代碼function A(){};和function B(){};只是普通的函數A和B。
然後就是A的原型。
a是普通的構造函數。
先給你科普一下基礎,我們創建的每個函數都有一個prototype(原型)屬性,這個屬性是一個指針,指向一個對象。這裡面的關鍵字是指針!而原型屬性的作用是,讓對象A包含一些共享的屬性和方法,而這里就是共享了方法,A原型裡面的fun。
PS:有時候,面試官還會把a = new A()放在,A.prototype前面,這樣就會導致原型指針混亂的問題,但是你這個問題,相對簡單,沒有這種情況,所以這里我也不說明了。

然後分析,問題的答案:

1、必定是true,因為每個構造函數都有一個constructor屬性,且指向A。但是如果在原型對象裡面自己去設置constructor屬性,這樣就會導致,指向Object對象,且屬性變為可枚舉的,如果你理解了這里,第二個問題就簡單了。
2、false。上面已經提過了,如果在A的原型裡面設置constructor,指向的對象肯定是Object,不信的話,你可以試試console.log(A.prototye.constructor === Object),這樣一定是true。
3、就是對hasOwnProperty的理解。hasOwnProperty是檢測a對象是否含有'constructor'這個屬性,他檢測的不是原型,而原型僅僅是一個指針,所以是false。
4、沒啥好說的,很簡單,就是true。

第二個問題
先對題目進行分析,new B()產生一個構造函數 而A的原型指向該構造函數
然後,var b = new A(); b和上面的a差不多 只不過A有點改變。
然後分析,答案:
1、在這里我必須說明一下A.prototye ={ } //無論對象裡面是什麼或者做了什麼事,他一定有一個constructor屬性,如果你不主動設置,他一定指向自己,也就是A,不信你自己實驗,所以一定是true。
2、我實在沒有發現代碼中,有類似B.prototype的語句,但是B下面還是有原型屬性B.prototype,只是這個屬性沒有被創建而已。為了確保正確,我查了查,constructor的概念,原來constructor的作用是返回對創建此對象的數組函數的引用。這里涉及了一個關鍵字,就是創建,所以我肯定這個問題的答案是報錯的了。因為這個原型是存在的,但沒被創建。而且constructor的概念,提及了一個重要的概念,引用,我不做說明了,自己網路。
3、其實這里只是繞了一個圈,等你繞過來的時候,他就是問A.prototye = new B();這里的問題了,這時候明顯指向了B,不信,可以把A改為B 一定是true。而這個問題的答案是false。
4、不要被指針影響了,hasOwnProperty檢測的不是原型指針,所以一定是false。
5、沒什麼好說的,明顯為true
6、還是那句原型只是一個指針,b不可能是B的實例,只是A的原型指向了B
綜合,本問題,主要考察的是對原型指針的理解,還有對constructor的認識。

⑶ Web前端崗位面試題有哪些

前端面試題匯總,基本上會有四大類問題,具體如下:
一、HTML

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

2、HTML5 為什麼只需要寫 <!DOCTYPE HTML>?
3、行內元素有哪些?塊級元素有哪些? 空(void)元素有那些?
4、頁面導入樣式時,使用link和@import有什麼區別?
5、介紹一下你對瀏覽器內核的理解?
6、常見的瀏覽器內核有哪些?
7、html5有哪些新特性、移除了那些元素?如何處理HTML5新標簽的瀏覽器兼容問題?如何區分 HTML 和 HTML5?
8、簡述一下你對HTML語義化的理解?
9、HTML5的離線儲存怎麼使用,工作原理能不能解釋一下?
10、瀏覽器是怎麼對HTML5的離線儲存資源進行管理和載入的呢?
11、請描述一下 cookies,sessionStorage 和 localStorage 的區別?
12、iframe有那些缺點?
13、Label的作用是什麼?是怎麼用的?(加 for 或 包裹)
14、HTML5的form如何關閉自動完成功能?
15、如何實現瀏覽器內多個標簽頁之間的通信? (阿里)
16、webSocket如何兼容低瀏覽器?(阿里)
17、頁面可見性(Page Visibility)API 可以有哪些用途?
18、如何在頁面上實現一個圓形的可點擊區域?
19、實現不使用 border 畫出1px高的線,在不同瀏覽器的Quirksmode和CSSCompat模式下都能保持同一效果。
20、網頁驗證碼是幹嘛的,是為了解決什麼安全問題?
21、tite與h1的區別、b與strong的區別、i與em的區別?

二、css

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

2、CSS選擇符有哪些?哪些屬性可以繼承?
3、CSS優先順序演算法如何計算?
4、CSS3新增偽類有那些?
5、如何居中div?如何居中一個浮動元素?如何讓絕對定位的div居中?
6、display有哪些值?說明他們的作用。
7、position的值relative和absolute定位原點是?
8、CSS3有哪些新特性?
9、請解釋一下CSS3的Flexbox(彈性盒布局模型),以及適用場景?
10、用純CSS創建一個三角形的原理是什麼?

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

三、常見兼容性問題?


  1. 1、li與li之間有看不見的空白間隔是什麼原因引起的?有什麼解決辦法?
    2、經常遇到的瀏覽器的兼容性有哪些?原因,解決方法是什麼,常用hack的技巧 ?
    3、為什麼要初始化CSS樣式。
    4、absolute的containing block計算方式跟正常流有什麼不同?
    5、CSS里的visibility屬性有個collapse屬性值是幹嘛用的?在不同瀏覽器下以後什麼區別?
    6、position跟display、margin collapse、overflow、float這些特性相互疊加後會怎麼樣?
    7、對BFC規范(塊級格式化上下文:block formatting context)的理解?
    8、CSS權重優先順序是如何計算的?
    9、請解釋一下為什麼會出現浮動和什麼時候需要清除浮動?清除浮動的方式
    10、移動端的布局用過媒體查詢嗎?
    11、使用 CSS 預處理器嗎?喜歡那個?
    12、CSS優化、提高性能的方法有哪些?
    13、瀏覽器是怎樣解析CSS選擇器的?
    14、在網頁中的應該使用奇數還是偶數的字體?為什麼呢?
    15、margin和padding分別適合什麼場景使用?
    16、抽離樣式模塊怎麼寫,說出思路,有無實踐經驗?[阿里航旅的面試題]
    17、元素豎向的百分比設定是相對於容器的高度嗎?
    18、全屏滾動的原理是什麼?用到了CSS的那些屬性?
    19、什麼是響應式設計?響應式設計的基本原理是什麼?如何兼容低版本的IE?
    20、視差滾動效果,如何給每頁做不同的動畫?(回到頂部,向下滑動要再次出現,和只出現一次分別怎麼做?)
    21、::before 和 :after中雙冒號和單冒號 有什麼區別?解釋一下這2個偽元素的作用。
    22、如何修改chrome記住密碼後自動填充表單的黃色背景 ?
    23、你對line-height是如何理解的?
    24、設置元素浮動後,該元素的display值是多少?(自動變成display:block)
    25、怎麼讓Chrome支持小於12px 的文字?
    26、讓頁面里的字體變清晰,變細用CSS怎麼做?(-webkit-font-smoothing: antialiased;)
    27、font-style屬性可以讓它賦值為「oblique」 oblique是什麼意思?
    28、position:fixed;在android下無效怎麼處理?
    29、如果需要手動寫動畫,你認為最小時間間隔是多久,為什麼?(阿里)
    30、display:inline-block 什麼時候會顯示間隙?(攜程)
    31、overflow: scroll時不能平滑滾動的問題怎麼處理?
    32、有一個高度自適應的div,裡面有兩個div,一個高度100px,希望另一個填滿剩下的高度。
    33、png、jpg、gif 這些圖片格式解釋一下,分別什麼時候用。有沒有了解過webp?
    34、什麼是Cookie 隔離?(或者說:請求資源的時候不要讓它帶cookie怎麼做)
    35、style標簽寫在body後與body前有什麼區別?

    四、javaScript

    1、介紹JavaScript的基本數據類型。
    2、說說寫JavaScript的基本規范?
    3、JavaScript原型,原型鏈 ? 有什麼特點?
    4、JavaScript有幾種類型的值?(堆:原始數據類型和 棧:引用數據類型),你能畫一下他們的內存圖嗎?
    5、Javascript如何實現繼承?
    6、Javascript創建對象的幾種方式?
    7、Javascript作用鏈域?
    8、談談This對象的理解。
    9、eval是做什麼的?
    10、什麼是window對象? 什麼是document對象?
    11、null,undefined的區別?
    12、寫一個通用的事件偵聽器函數(機試題)。
    13、[「1」, 「2」, 「3」].map(parseInt) 答案是多少?
    14、關於事件,IE與火狐的事件機制有什麼區別? 如何阻止冒泡?
    15、什麼是閉包(closure),為什麼要用它?
    16、javascript 代碼中的」use strict」;是什麼意思 ? 使用它區別是什麼?
    17、如何判斷一個對象是否屬於某個類?
    18、new操作符具體幹了什麼呢?
    19、用原生JavaScript的實現過什麼功能嗎?
    20、Javascript中,有一個函數,執行時對象查找時,永遠不會去查找原型,這個函數是?
    21、對JSON的了解?
    22、[].forEach.call($$("*"),function(a){ a.style.outline="1px solid #"+(~~(Math.random()*(1<<24))).toString(16) }) 能解釋一下這段代碼的意思嗎?
    23、js延遲載入的方式有哪些?
    24、Ajax 是什麼? 如何創建一個Ajax?
    25、同步和非同步的區別?
    26、如何解決跨域問題?
    27、頁面編碼和被請求的資源編碼如果不一致如何處理?
    28、模塊化開發怎麼做?
    29、AMD(Moles/Asynchronous-Definition)、CMD(Common Mole

    Definition)規范區別?
    30、requireJS的核心原理是什麼?(如何動態載入的?如何避免多次載入的?如何 緩存的?)
    31、讓你自己設計實現一個requireJS,你會怎麼做?
    32、談一談你對ECMAScript6的了解?
    33、ECMAScript6 怎麼寫class么,為什麼會出現class這種東西?
    34、非同步載入的方式有哪些?
    35、documen.write和 innerHTML的區別?
    36、DOM操作——怎樣添加、移除、移動、復制、創建和查找節點?
    37、.call() 和 .apply() 的含義和區別?
    38、數組和對象有哪些原生方法,列舉一下?
    39、JS 怎麼實現一個類。怎麼實例化這個類
    40、JavaScript中的作用域與變數聲明提升?
    41、如何編寫高性能的Javascript?
    42、那些操作會造成內存泄漏?
    43、JQuery的源碼看過嗎?能不能簡單概況一下它的實現原理?
    44、jQuery.fn的init方法返回的this指的是什麼對象?為什麼要返回this?
    45、jquery中如何將數組轉化為json字元串,然後再轉化回來?
    46、jQuery 的屬性拷貝(extend)的實現原理是什麼,如何實現深拷貝?
    47、jquery.extend 與 jquery.fn.extend的區別?
    48、jQuery 的隊列是如何實現的?隊列可以用在哪些地方?
    49、談一下Jquery中的bind(),live(),delegate(),on()的區別?
    50、JQuery一個對象可以同時綁定多個事件,這是如何實現的?
    51、是否知道自定義事件。jQuery里的fire函數是什麼意思,什麼時候用?
    52、jQuery 是通過哪個方法和 Sizzle 選擇器結合的?(jQuery.fn.find()進入Sizzle)
    53、針對 jQuery性能的優化方法?
    54、Jquery與jQuery UI有啥區別?
    55、JQuery的源碼看過嗎?能不能簡單說一下它的實現原理?
    56、jquery 中如何將數組轉化為json字元串,然後再轉化回來?
    57、jQuery和Zepto的區別?各自的使用場景?
    58、針對 jQuery 的優化方法?
    59、Zepto的點透問題如何解決?
    60、jQueryUI如何自定義組件?
    61、需求:實現一個頁面操作不會整頁刷新的網站,並且能在瀏覽器前進、後退時正確響應。給出你的技術實現方案?
    62、如何判斷當前腳本運行在瀏覽器還是node環境中?(阿里)
    63、移動端最小觸控區域是多大?
    64、jQuery 的 slideUp動畫 ,如果目標元素是被外部事件驅動, 當滑鼠快速地連續觸發外部元素事件, 動畫會滯後的反復執行,該如何處理呢?
    65、把 Script 標簽 放在頁面的最底部的body封閉之前 和封閉之後有什麼區別?瀏覽器會如何解析它們?
    66、移動端的點擊事件的有延遲,時間是多久,為什麼會有? 怎麼解決這個延時?(click 有 300ms 延遲,為了實現safari的雙擊事件的設計,瀏覽器要知道你是不是要雙擊操作。)
    67、知道各種JS框架(Angular, Backbone, Ember, React, Meteor, Knockout…)么? 能講出他們各自的優點和缺點么?
    68、Underscore 對哪些 JS 原生對象進行了擴展以及提供了哪些好用的函數方法?
    69、解釋JavaScript中的作用域與變數聲明提升?
    70、那些操作會造成內存泄漏?
    71、JQuery一個對象可以同時綁定多個事件,這是如何實現的?
    72、Node.js的適用場景?
    (如果會用node)知道route, middleware, cluster, nodemon, pm2, server-side rendering么?
    73、解釋一下 Backbone 的 MVC 實現方式?
    74、什麼是「前端路由」?什麼時候適合使用「前端路由」? 「前端路由」有哪些優點和缺點?
    75、知道什麼是webkit么? 知道怎麼用瀏覽器的各種工具來調試和debug代碼么?
    76、如何測試前端代碼么? 知道BDD, TDD, Unit Test么? 知道怎麼測試你的前端工程么(mocha, sinon, jasmin, qUnit..)?
    77、前端templating(Mustache, underscore, handlebars)是幹嘛的, 怎麼用?
    78、簡述一下 Handlebars 的基本用法?
    79、簡述一下 Handlerbars 的對模板的基本處理流程, 如何編譯的?如何緩存的?
    80、用js實現千位分隔符?(來源:前端農民工,提示:正則+replace)
    檢測瀏覽器版本版本有哪些方式?
    81、我們給一個dom同時綁定兩個點擊事件,一個用捕獲,一個用冒泡,你來說下會執行幾次事件,然後會先執行冒泡還是捕獲

⑷ 前端面試要點

想要通過前端面試順利進入一線大廠成就高薪前端夢。那麼首先,我們得知道前端面試中,社招和校招究竟有啥區別?

對於前端開發來說,如果說社招更看重對前端技術體系的深入理解,以及解決問題的能力話,那校招更看重的其實是基本功和學習能力(或者說是潛力)。

但其實,無論是社招還是校招,面試的時候都會問到一些曾經操作過的項目,尤其是大廠,或者熱門高薪部門,面試官除必問的技術經驗外,也會對技術深度進行一個基礎的考核,那在這種情況下如何hold住大廠面試呢?

前端面試三要素:簡歷、個人介紹、技術能力。下面,就來分別聊一聊。

1、簡歷篩選關:

HR一般會去看簡歷中所提的技術棧是否匹配,怎麼看呢?我們可以抓住簡歷中的技術名詞,一般來說如果一點技術名詞都沒有提到,那麼大概有以下幾種可能:很水、很牛但概率很小、不會寫簡歷。所以,一部分人可能會因為簡歷的問題沒有了面試機會,這點是需要非常注意的。

2、個人介紹關:

通過了簡歷篩選階段,就真正到了面試環節。這時候一定要准備好一段最多3分鍾的個人介紹。請注意,最多3分鍾!言簡意賅的說明自己的工作時間,擅長技術棧和自己的工作預期。

3、項目經驗表達:

對前端開發學習者而言,JS並不陌生,但大廠的JS面試題卻總是顯得很「陌生」,怎麼樣能夠真正做到深入理解與高級應用?這不僅是面試過程中對前端求職者的要求,也是大多數前端開發者的痛點。

大廠面試中,面試官除了關注你的項目經驗外,還往往喜歡和面試者深入探討前端某些技術領域成體系的前端知識。比如:模塊化、非同步解決方案、網路、框架及原理、線程等,但在與面試官的正面battle中,求職者總會敗下陣來。

所以,建議大家在Web前端面試前一定要注重這三個方面的內容。注重了這些想找找到一份適合的Web前端開發工作並不是難事。

⑸ web前端面試經常問到的面試題有哪些

Web前端經常被問到的面試題及答案

一、HTML+CSS

1.對WEB標准以及W3C的理解與認識

標簽閉合、標簽小寫、不亂嵌套、提高搜索機器人搜索幾率、使用外
鏈css和js腳本、結構行為表現的分離、文件下載與頁面速度更快、內容能被更多的用戶所訪問、內容能被更廣泛的設備所訪問、更少的代碼和組件,容易維
護、改版方便,不需要變動頁面內容、提供列印版本而不需要復制內容、提高網站易用性;

2.xhtml和html有什麼區別

HTML是一種基本的WEB網頁設計語言,XHTML是一個基於XML的置標語言

最主要的不同:

XHTML 元素必須被正確地嵌套。

XHTML 元素必須被關閉。

標簽名必須用小寫字母。

XHTML 文檔必須擁有根元素。

3.Doctype? 嚴格模式與混雜模式-如何觸發這兩種模式,區分它們有何意義?

用於聲明文檔使用那種規范(html/Xhtml)一般為 嚴格 過度 基於框架的html文檔

加入XMl聲明可觸發,解析方式更改為IE5.5 擁有IE5.5的bug

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

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

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

Css盒模型:內容,border ,margin,padding

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

內聯 內嵌 外鏈 導入

區別 :同時載入

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

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

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

標簽選擇符 類選擇符 id選擇符

繼承不如指定 Id>class>標簽選擇

後者優先順序高

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

結構層 Html 表示層 CSS 行為層 js

8.css的基本語句構成是?

選擇器{屬性1:值1;屬性2:值2;……}

9.你做的頁面在哪些流覽器測試過?這些瀏覽器的內核分別是什麼?

Ie(Ie內核) 火狐(Gecko) 谷歌(webkit) opear(Presto)

二、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.寫一個獲取非行間樣式的函數

function getStyle(obj,attr,value)

{

if(!value)

{

if(obj.currentStyle)

{

return obj.currentStyle(attr)

}

else

{

obj.getComputedStyle(attr,false)

}

}

else

{

obj.style[attr]=value

}

}

⑹ 有哪些經典的 Web 前端或者 JavaScript 面試筆試題

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(Moles/Asynchronous-Definition)、CMD(Common Mole 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年給自己的規劃嗎?

⑺ 前端面試會提問到哪些

在面試前端的過程中,有些問題是經常會被提問到的
一、基礎篇
1. 在不使用第三個變數的情況下,如何調換a與b的值?
2. px與em的區別
3. 簡述一下盒模型
4. 頁面導入樣式時,使用link和@import有什麼區別?
5. 簡述一下事件代理
二、HTML常見題目
01、Doctype作用?嚴格模式與混雜模式如何區分?它們有何意義?
02、HTML5為什麼只需要寫?
03、行內元素有哪些?塊級元素有哪些?空(void)元素有哪些?
04、頁面導入樣式時,使用link和@import有什麼區別?
05、介紹一下你對瀏覽器內核的理解?
06、常見的瀏覽器內核有哪些?
07、html5有哪些新特性、移除了哪些元素?如何處理HTML5新標簽的瀏覽器兼容問題?
08、如何區分HTML和HTML5?
09、簡述一下你對HTML語義化的理解?
10、HTML5的離線儲存怎麼使用,工作原理能不能解釋一下?
三、CSS類的題目
01、介紹一下標準的CSS的盒子模型?與低版本IE的盒子模型有什麼不同的?
02、CSS選擇符有哪些?哪些屬性可以繼承?
03、CSS優先順序演算法如何計算?
04、CSS3新增偽類有哪些?
05、如何居中div?如何居中一個浮動元素?如何讓絕對定位的div居中?
06、display有哪些值?說明他們的作用。
07、position的值relative和absolute定位原點是?
08、CSS3有哪些新特性?
09、請解釋一下CSS3的Flexbox(彈性盒布局模型),以及適用場景?
10、用純CSS創建一個三角形的原理是什麼?
四、JavaScript類的題目
01、JavaScript中this是如何工作的
02、請解釋原型繼承的原理。
03、什麼是閉包(closure),如何使用它,為什麼要使用它?
04、.call 和.apply的區別是什麼?
05、請指出JavaScript 宿主對象(host objects) 和原生對象(native objects) 的區別?
06、請指出以下代碼的區別:function Person(){}、var person = Person()、var person = new Person()?
07、請解釋變數聲明提升(hoisting)。
08、什麼是 「use strict」; ? 使用它的好處和壞處分別是什麼?
09、什麼是事件循環 (event loop)?
10、請解釋同步 (synchronous) 和非同步 (asynchronous) 函數的區別。
五、開發及性能優化類題目
01、如何規避javascript多人開發函數重名問題?
02、請說出三種減低頁面載入時間的方法.
03、說說你所了解到的Web攻擊技術。
04、說說你說了解的前端性能優化方法?
05、前端開發中,如何優化圖像?圖像格式的區別?
06、瀏覽器是如何渲染頁面的?
07、頁面重構怎麼操作?
08、什麼叫優雅降級和漸進增強?
09、前端需要注意哪些SEO?如何做SEO優化?
10、平時如何管理你的項目?

⑻ 前端面試題,map,forEach,for循環,三個都能遍歷,啥區別

for遍歷對象自身的和繼承的可枚舉的屬性,也就是說會包括那些原型鏈上的屬性。如果想要僅迭代自身的屬性,那麼在使用 for...in

forEach

只能遍歷數組,不能中斷,沒有返回值(或認為返回值是undefined)
map

只能遍歷數組,不能中斷,返回值是修改後的數組

熱點內容
電信光纖上傳限制 發布:2024-05-18 16:08:05 瀏覽:910
sql中的limit 發布:2024-05-18 16:05:57 瀏覽:895
啟動ug時伺服器無響應是怎麼回事 發布:2024-05-18 15:48:24 瀏覽:372
小數除法的計演算法則 發布:2024-05-18 15:36:52 瀏覽:530
安卓網卡免驅動如何實現 發布:2024-05-18 15:25:15 瀏覽:860
8加6演算法 發布:2024-05-18 15:04:25 瀏覽:738
名圖16款尊享什麼配置 發布:2024-05-18 14:55:37 瀏覽:585
我的世界怎樣刷出32k伺服器 發布:2024-05-18 14:32:32 瀏覽:565
c語言程序設計江寶釧 發布:2024-05-18 14:32:22 瀏覽:780
右擊文件夾總是轉圈圈 發布:2024-05-18 14:31:10 瀏覽:697