這裡有超過20家的前端面試題,你確定不點進來看看?
1. 前言
這裡有超過20家的前端面試題,你確定不點進來看看?
好吧,如果你看到這句話,你明顯是點進來了。
那麼恭喜你,接下來我就和你們分享一下,近期我收集到的各個公司的面試題。
本文為作者原創,轉載請告知作者並取得同意方可轉載。
違者作者保留法律追究權利。
2. 正文
閒話就不扯了,直接開始分享。
2.1 第一套面試題
-
當前一段程式碼輸出結果是什麼?
-
當前一段程式碼輸出結果是什麼?
-
假設現有一篇文章,
var content = "...大量文字"
, 文章中觸及到一些敏感詞彙,如["習近平","周永康","中共","6.4"]
等內容。 如何在文章中發現這些敏感詞,並將背景設定為紅色或者改變字型顏色並標示出來。 -
JQuery 中 $fn.extend 函式的實現(實現核心程式碼即可)
-
設計基於觀察者模式的事件繫結機制
2.2 第二套面試題
-
列出 display 的值,並說明他們的作用
-
position 中,relative 和 absolute 的區別,包括使用時的注意事項和定位原點
-
CSS 選擇符有哪些?哪些屬性可以繼承?優先順序演算法如何計算?CSS 3 新增的偽類有哪些?
-
CSS 3 有哪些新特性?
-
new 操作符具體做了什麼?
-
請問三行 a,b,c 輸出分別是什麼?
-
問,輸出分別為什麼?
-
問輸出結果為什麼?
2.3 第三套面試題
-
用盡可能多的方法找出陣列中重複出現過的元素
-
例如:[1,2,4,4,3,3,1,5,3]
-
輸出:[1,3,4]
-
作者補充:若給出多種方式,請分別給出他們的複雜度
-
給定一些文件(docs)、詞(words),找出詞在文件中全部存在的所有文件
2.4 第四套面試題
- 本地伺服器為 172.16.2.30:8080/test/index.html 伺服器地址為 172.16.3.30:8088/get/data, 請求方式為 ‘get’,data 為 '', 請求成功時獲取資料為
請寫一段 JS 程式獲取伺服器地址上的資料
PS:
如果解題需要用到 JS 庫或者外掛, 請用 reqiure.js 在 題前引入
2.5 第五套面試題
- 請用演算法實現,從給定的無序、不重複的陣列 A 中,取出 N 個數,使其相加和 為 M。 並給出演算法的 時間/空間複雜度。
2.6 第六套面試題
-
請寫出超連結的順序或者你在初始樣式中的連結方法。
-
要求預設無下劃線,滑鼠經過有下劃線
-
當 float 和 margin 同時使用,IE 6 的雙倍邊距 BUG 如何解決?
-
為什麼無法定義 1px 左右高度的容器?
-
FireFox 中標籤的居中問題的解決方法?
-
請寫出 XHTML 和 CSS 如何註釋?
-
請以縮寫方法寫出 1px 直線灰色,上面無邊框的矩形邊框樣式。
2.7 第七套面試題
-
下面程式碼會輸出什麼?
-
定義一個 log 方法,讓它可以代理 console.log 的方法。
-
簡述一下 Sass 和 Less,並說明區別。
-
不用迴圈,建立一個長度為 100 的陣列,並且每個元素的值等於它的下標。
-
當專案的某個模組發生問題了,你是怎麼定位錯誤的?你常用的測試工具是什麼?
-
HTML5 中如何嵌入音訊?
-
HTML5 儲存型別都有哪些,有什麼區別?
-
CSS 3 新增偽類有哪些?
-
iOS 自動識別數字為手機號碼,導致部分設定好的樣式無法訪問,如何解決這個問題?
2.8 第八套面試題
-
HTML 和 XHTML 的區別?
-
行內元素有哪些?塊級元素有哪些?
-
CSS 的 盒模型
-
寫出 CSS 3 中的幾個屬性
-
HTML 5 中新加了哪些標籤,移除了哪些標籤?
-
定位有哪幾種?
-
寫出一段程式碼,實現 tab 切換。
-
作者補充: 請用不少於三種方式實現
-
當點選一個頁面內的元素時,alert 出這個元素的標籤名
-
注意相容性問題
-
一個整數,它的各位數字如果是左右對稱的,則這個數字是對稱數。那麼請找出 1 至 10000 中所有的對稱數。
2.9 第九套面試題
-
編譯語言與解釋執行語言(指令碼語言)有什麼區別?
-
請各舉例兩種程式語言
-
請列舉出至少五個應用層網路協議。
-
解釋 UNIX 時間戳的含義及作用,並寫出獲取當前 UNIX 時間戳的程式碼。
-
版本控制工具的作用是什麼?請列舉你熟知的版本控制工具。
-
HTTP 協議的 GET/POST 方法的區別以及適用場景分別是什麼?
-
作者補充:如果為 HTTPS 呢?知道 SSL 麼?它們之間分別有哪些聯絡?
2.10 第 10 套面試題
-
寫出兩個開發中遇到的相容性問題。
-
作者補充:你是如何解決的?
-
寫出五個 Array 物件的方法
-
簡單介紹前端工程化
2.11 第十一套面試題
-
typeof bar === "object" 判斷是否為 object 型別?有什麼問題?怎麼避免?
-
以下程式碼輸出結果是什麼?
-
以下程式碼輸出結果是什麼?
-
以下程式碼輸出結果是什麼?
2.12 第十二套面試題
-
JS 中有幾種資料型別?
-
JS 中,哪些為 真,哪些為假?
-
計算以下運算結果
-
請寫出以下正規表示式的詳細規則說明
-
/^(0[1-9]\d\d?)?[1-9]\d{6}\d?$/
-
/^(1[89]|[2-9]\d|100)$/i
-
/^[\w-]+@[a-z0-9-]+({[a-z]{2,6}}){1,2}$/i
-
請寫出打亂陣列方法
-
寫出 getElementsByClassName 的實現方法
2.13 第十三套面試題
-
請描述 JSON 和 JSONP 的區別?
-
源與目標資源位於同域之下,JQuery 中 JSONP 是非同步進行的麼?跨域時是非同步麼?
-
目前熟練使用的前端框架有哪些?
-
作者補充:不少於 5 項
-
列舉 IE 與 FF 指令碼相容性問題
-
作者補充:不少於 7 種
-
請至少寫出 5 個 HTML 5 新增的標籤,並說明他們的語義和應用場景。
-
HTML5 中有哪些新的表單元素型別?
-
作者補充:不少於5項,並說明使用場景
-
CSS 3 中新增了哪些文字效果?
-
作者補充:並說明內部常用屬性
-
FF 下如何實現 outerHTML?
-
border-left-color、margin-left、-moz-viewport 改寫成 JS 格式
-
李鵬之吐槽:我的天,你見過 marin-left?border-color-left?
2.14 第十四套面試題
-
請寫出程式碼輸出結果。
-
請寫出程式碼輸出結果。
-
請寫出程式碼輸出結果。
###2.15 其他一些面試題的集合
3. 後記
我的天,終於寫完了,前前後後得用了三天時間才出來這一篇文章。
真是累死喵了。
但是寫完,還是很有成就感的。
其實很多人對寫部落格的人表示很不理解,為什麼要去寫部落格?自己的時間都不夠用,何必浪費心血?你自己寫一篇文章可能用兩三天,別人過來偷一篇文章,前後算上也就十幾分鍾。
其實自己也想過這些問題,就像之前寫的文章,閱讀量近7W,別人過來問問,能轉載麼?我說可以,回頭文章就變成別人的,而且經常冠以什麼,《知名 XXX 告訴你,應該XXXX》什麼的,結果就沒有自己什麼事情了。
那時候,突然覺得自己的努力真的是沒什麼作用。
經過那麼多年的“拿來主義”,很多時候你會發現,你寫的甚至沒有人家抄的快。