當前位置:首頁 » 網頁前端 » 前端面試
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

前端面試

發布時間: 2022-01-29 20:51:38

前端面試會提問到哪些

在面試前端的過程中,有些問題是經常會被提問到的
一、基礎篇
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、平時如何管理你的項目?

⑵ 美團前端面試難嗎

美團目前也是在大量的招人啊~~當時參加的是美團打車部門的面試(一年工作經驗以上的),部門技術棧vue,後台就是node,一面通過,等了兩個小時面試二面,然後通知我回去等消息,一般這樣就是掛掉了,毫無疑問。美團是一次性全部面完的。所以去參加最好做好面試四個小時的打算。
先來聊聊一面吧~哈哈
一面
1.簡單的自我介紹,與大體的了解我。。。
一面面試官非常不錯,先問了下幾個項目和用到的技術,會先對我懂的東西做一個大體的了解,比如webpack的單頁面的多頁面切換,webpack的按需載入,一些webpack的配置有哪些,問了有沒有看vue源碼,我說了一個vue的watch,大體問了問我框架方面的東西,發現我對框架並不是很熟練,安慰我說沒有關系。
2.promise的原理
這個面試官最讓人欣賞的就是不會去問你不了解的東西,一開問了我promise,發現我用的並不是很多,就很自然的說沒事,換一種方法問你~~~好和藹啊~
然後就讓我用原生js寫一個回調函數,其實就是問promise的原理了,js寫一個。
3.this指向
這個是面試官手寫了一道變態長以及繞的this指向題,可以自行網路js this指向面試題,看幾道沒有啥問題,需要關注的是其中也考了,argument,和apply(null)。以後想起來再寫吧
4.bind與函數柯里化
也就是寫個bind,這個紅皮書高級函數(22章)有,

可以看下。不過還是得先理解bind的用法,返回一個函數,以及可以傳遞的參數。參數這里涉及到了函數柯里化。都是手寫代碼,而且最好寫的整潔,因為我有些一筆帶過,面試官都讓我寫完整,明確說要看我寫代碼水平
5.==, isNaN, typeof
問這個之前先問了我有幾種數據類型(七種,下圖再加symbol),這里隱形的看你知不知道es6,symbol這個新出的類型。說出了symbol自然會問你這個類型有什麼用。

然後就寫了好多個typeof,isNaN,==的問輸出,這個就是基礎題
6.知道什麼http請求頭?
這個可以說的很多,說了幾個,又主動說了下有關跨域請求頭,之前項目用的cors,於是和他聊了一會,其實面試就是主動表現自己,把自己知道的都說出來,不然幾個請求頭說細不細,要問細了能把人問蒙了,最好把話題引到自己知道的地方。
7.問了css
問了css盒子並畫出來,清除浮動與bfc,兩列布局。
8.說了一大堆其實就是想考我防抖
面試完這個問我想問的問題,我直接問還有二面么?回答有的,又介紹了一會美團打車,說是後台是node,看來要求是前端也要有後台的知識嘍。
二面
二面的是我的學長,可是我被問慘了。。。。問的顯然比一面深入很多,都問了java
1.自我介紹,問項目
針對項目問了不少,當時有一個支付行為的項目,於是問了很多安全方面的問題,蒙蒙的,完全不知道。第一個就很失敗了。然後問了其他的項目,問了websocket。
2.node的EventEmitter用js實現出來
寫出來了,但是可以看出來代碼寫的不規范,學長面試官表示看起來很亂。不過大約算是可以的,指出了幾個問題,讓我進行修改。(之後完善)
3.虛擬dom
其實vue中就有jsx,react的特點之一有jsx,虛擬dom和代碼優化有點關系。
先說下正常對dom的操作,在瀏覽器中分為渲染引擎和js引擎,現在瀏覽器內核一般都是渲染引擎(生成渲染樹),因為js引擎越來越獨立了(所謂的v8引擎?)
然而你在js中獲取dom元素的時候你必須要通過渲染引擎,這樣兩個線程之間的數據交換自然會很慢。所以在前端優化中總是要考慮減少dom操作這一項。包括獲取dom元素變數儲存起來。
jsx是把dom元素變成了儲存在內存中的數據結構。js很快,操作dom也很快。不過也存在缺點,目前的理解就這么點了。
4.路由的實現原理
餓,不知道。。(待會看!)
5.node文件流,java的映射機制(記不太清楚)?
餓。。
6.數組方法map和recer區別?

7.進程與線程的區別
終於有個我會的了,這個顯然想問你js的運行機制。先介紹了下進程與線程。
一個瀏覽器是一個進程,雖然js是單線程的,但是瀏覽器是多線程的,v8引擎也是多線程的,比如有渲染線程,有處理請求的線程。然後說說任務隊列,eventloop。沒有理解很深也不敢往下說。
事件循環可以看下這個,鏈接
8.樹遍歷
先序,中序,後序。我只知道這么多了,顯然想讓我寫一個的,可是不會。也顯然面試官內心已經把我pass掉了,沒多問。
9.問了個演算法
KMP??反正我不知道。

⑶ 前端面試會問什麼問題

面試就像相親,一看緣分,二看眼緣,三看是否能滿足雙方的要求。

推薦閱讀前端開發面試經 ,從面試官角度談面試。

⑷ web前端初級面試要求

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

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

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

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

1、簡歷篩選關:

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

2、個人介紹關:

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

3、項目經驗表達:

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

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

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

⑸ 前端面試 問什麼問題

web前端面試會問人事方面的內容和web前端技術的內容;

人事的面試

web前端人事面試方面,需要注意如何自我介紹、性格有哪些優劣勢、職業規劃方向是什麼、你的特長是什麼、對於加班之類你是怎麼看待等人事面試內容;

web前端技術的面試

技術面試,需要注意HTML+CSS+JavaScript以及JS主流框架的使用,比如Vue、React等,前端相關技術,比如tcp握手協議、網路安全、後端技術等;

對於web前端面試准備,建議你去看「決勝前端」(min app),它裡麵包含了很多web前端技術面試、人事面試等面試真題,而且針對面試題做了詳細的分析與解答。

我給你截圖看一下例子吧

⑹ web前端面試怎麼介紹

  • 你的筆試題, 根據其做延伸.

  • 你的簡歷, 技術棧、工作外學習情況、項目經驗. 第一頁很重要, 最好都能掌握, 有亮點更好.

  • 面試官額外的延展的知識點, 隨機問,看你運氣和積累(一般會提及到 ES6、解決實際問題的方法、數據結構與演算法都有可能).

  • 應對

  • 刷題, 各種基礎題會幫你快速回憶起來, 比你看書快, 如果基礎不好的話, 看書好好學學吧.

  • 簡歷上自己寫的東西, 要能說出來.

  • 積累, 每次面試不成功就回來填坑吧, 還是有掌握不到位的. 我覺得能堅持下來的話, 找工作只是時間問題.

  • 據公司業務不同, 著重點不一樣, 公司能把你簡歷挑出來, 就說明有用人單位感興趣的部分.

  • 可能你寫的是熟練使用 Vue, 公司也是這個技術棧.

  • 可能你知識寫的全面, 公司想面面你實際掌握怎麼樣.

  • 可能你項目寫的貼合用人單位需要, 比如都是做後台管理的.

  • 框架問題: (Vue 舉例, 3框架實質問題差不多, 具體有些差異)

  • 封裝過哪些組件?有自己寫過 UI 組件嗎?

  • 什麼是 MVVM , 和 MVC 是什麼區別, 原理是什麼?

  • 父子組件怎麼通信的?

  • 兄弟組件怎麼通信的?

  • 生命周期有哪些, 怎麼用?

  • Vue 全家桶都用過哪些?具體怎麼用?

  • HTML5 + CSS3

  • 盒子模型

  • 如何給未知寬高的圖片垂直居中對齊? 有幾種方法?

  • 移動端的 rem 布局.

  • 前端可以做哪些優化, 或問你 SEO, 基本都問.

  • 清除浮動方式和原理, 基本都問. 幾種方式? 原理? 為什麼要用偽元素? 具體代碼怎麼寫,為什麼這么寫?

  • 清除浮動就會涉及到 BFC 的問題.

  • 給你實際頁面例子, 讓你口述布局或手寫實現細節, 可以使用幾種方法, 怎麼寫兼容性好, 拓展性好.

  • 具體 API 哪個 CSS 版本的?

  • CSS3 新增了哪些 API?

  • 可能問你哪些 API 是 CSS 哪個版本的? 兼容性怎麼樣.

  • CSS hack 是什麼? 包含什麼? 怎麼處理兼容性問題?

  • HTML5 新增了哪些 API? 哪些比較常用? 用來做什麼? 實際怎麼用?

  • cookie, session, localStrorage, sessionStorage 區別, 具體怎麼用代碼去操作?

  • JavaScript

  • 變數聲明提升的問題.

  • 閉包的原理, 閉包的各種題, 基本都問.

  • DOM2 事件流, 冒泡和捕獲問題?

  • this 指向問題, 一般都是在筆試題里, 拿著問你, 問的比較多.

  • call 和 apply 區別? 有的還會加問 bind?

  • 面向對象編程中的繼承問題, 原型鏈問題在筆試題里比較常見.

  • jQuery API , 各種操作 DOM 用法, 還有一些新的 API, 這種在不用 3 大框架的公司會問的很詳細.

  • 可能有些考演算法結構的, 可以了解一下, 一般前端掌握的很少.

  • Ajax 基本都問, 問的細節可能不同, 比如 get 和 post 有什麼區別?

  • 數組的方法 - es6 以下基本都能熟練使用, 應該會加分不少

  • 字元串的方法 - 拼接, 截取, 帶些正則

  • 數組去重問的挺多的(解法很多, ES6 有很多簡短寫法)

  • ES6 的 Promise , 很多都會問. 如果公司用框架或者你寫了, 還會問你 Class.

  • var, let, const區別, 問的多.

  • 棧和隊列結構, 有的會問.

  • 跨域問題: 同源策略, 解決方案, 解決原理(比如 jsonp 的原理), 這里都是高發區.

⑺ 前端面試一般問什麼

web前端面試會問人事方面的內容和web前端技術的內容;

人事的面試

web前端人事面試方面,需要注意如何自我介紹、性格有哪些優劣勢、職業規劃方向是什麼、你的特長是什麼、對於加班之類你是怎麼看待等人事面試內容;

web前端技術的面試

技術面試,需要注意HTML+CSS+JavaScript以及JS主流框架的使用,比如Vue、React等,前端相關技術,比如tcp握手協議、網路安全、後端技術等;

對於web前端面試准備,建議你去看「決勝前端」(min app),它裡麵包含了很多web前端技術面試、人事面試等面試真題,而且針對面試題做了詳細的分析與解答。

我給你截圖看一下例子吧

⑻ 前端面試問題

大數據(big data),指無法在一定時間范圍內用常規軟體工具進行捕捉、管理和處理的數據集合,是需要新處理模式才能具有更強的決策力、洞察發現力和流程優化能力的海量、高增長率和多樣化的信息資產
大數據技術可以幫助企業准確定位意向客戶;通過數據分析我們可以建立城市規劃、解決醫療發展難題;傳統行業轉型互聯網也可以利用大數據價值。所以大數回據技術被廣泛應用在各行各業,現在越來越多的企業開始重視大數據技術,並招聘大數據人才。

⑼ 前端面試職業規劃怎麼說

一般來說前端的發展有兩個大方向,一是技術,二是管理。走技術方向的話,可以慢慢發展為前端架構師。選擇這條路的小夥伴,對技術有比較高的要求,需要自身不斷學習進步,提高專業水平。走管理方向的小夥伴可以成為前端經理或是高級產品經理。這條路本人覺得也是一條不錯的出路。
在這個高速發展的年代,人人都可以是產品經理。在前端界打滾了這么多年,自然有不少產品的基礎和思想。所以前端轉產品,也是一條相對不會很吃力的路。當然啦自己創業,也是很好的一條發展道路。看自己適合怎麼走就行了,做前端的職業發展再怎麼樣都是很有前途的。
你不要老覺得年紀大了就不能做前端了,也不必認為前端只是青春飯。只要真正掌握了前端的技術,早日規劃自己的職業發展道路,不渾渾噩噩的工作,未來就會一直掌握在自己手中。
以上就是總結的Web前端的職業規劃。對於工作到一定年限的Web前端工程師,是繼續走技術路線,還是轉型走管理路線,沒有好壞之分,只能說每個人的職業規劃方向不同。但就架構師和技術經理這兩個角色而言,其實更多隻是職稱不同,工作內容是相似的。希望本篇文章能夠對正准備從事Web前端開發的小夥伴們有所幫助。