您的位置:首頁>正文

2017 前端校招總結!不會還不看!

HTML

HTML5新特性, 語義化

流覽器的標準模式和怪異模式

xhtml和html的區別

使用data-的好處

meta標籤

canvas

HTML廢棄的標籤

IE6 bug, 和一些定位寫法

css js放置位置和原因

什麼是漸進式渲染

html範本語言

meta viewport原理

CSS

盒模型, box-sizing

CSS3新特性, 偽類, 偽元素, 錨偽類

CSS實現隱藏頁面的方式

如何實現水準居中和垂直居中。

說說position, display

請解釋*{box-sizing:border-box;}的作用, 並說明使用它的好處

浮動元素引起的問題和解決辦法?絕對定位和相對定位, 元素浮動後的display值

link和@import引入css的區別

解釋一下css3的flexbox, 以及適用場景

inline和inline-block的區別

哪些是塊級元素那些是行級元素, 各有什麼特點

grid佈局

table佈局的作用

實現兩欄佈局有哪些方法?

css dpi

你知道attribute和property的區別麼

css佈局問題?css實現三列佈局怎麼做?如果中間是自我調整又怎麼做?

流式佈局如何實現, 回應式佈局如何實現

移動端佈局方案

實現三欄佈局(聖杯佈局, 雙飛翼佈局, flex佈局)

清除浮動的原理

overflow:hidden有什麼缺點?

padding百分比是相對于父級寬度還是自身的寬度

css3動畫, transition和animation的區別, animation的屬性, 加速度, 重力的模擬實現

CSS 3 如何實現旋轉圖片(transform: rotate)

sass less

對移動端開發瞭解多少?(回應式設計、Zepto;@media、viewport、JavaScript 規則運算式判斷平臺。 )

什麼是bfc, 如何創建bfc?解決什麼問題?

CSS中的長度單位(px,pt,rem,em,ex,vw,vh,vh,vmin,vmax)

CSS 選擇器的優先順序是怎樣的?

雪碧圖

svg

媒體查詢的原理是什麼?

CSS 的載入是非同步的嗎?表現在什麼地方?

常遇到的流覽器相容性問題有哪些?常用的hack的技巧

外邊距合併

解釋一下“::before”和“:after”中的雙冒號和單冒號的區別

JS

js的基本類型有哪些?參考類型有哪些?null和undefined的區別。

如何判斷一個變數是Array類型?如何判斷一個變數是Number類型?(都不止一種)

Object是參考類型嘛?參考類型和基本類型有什麼區別?哪個是存在堆哪一個是存在棧上面的?

JS常見的dom操作api

解釋一下事件冒泡和事件捕獲

事件委託(手寫例子), 事件冒泡和捕獲, 如何阻止冒泡?如何組織預設事件?

對閉包的理解?什麼時候構成閉包?閉包的實現方法?閉包的優缺點?

this有哪些使用場景?跟C,Java中的this有什麼區別?如何改變this的值?

call, apply, bind

顯示原型和隱式原型, 手繪原型鏈, 原型鏈是什麼?為什麼要有原型鏈

創建物件的多種方式

實現繼承的多種方式和優缺點

new 一個物件具體做了什麼

手寫Ajax, XMLHttpRequest

變數提升

舉例說明一個匿名函數的典型用例

指出JS的宿主物件和原生物件的區別, 為什麼擴展JS內置對象不是好的做法?有哪些內置物件和內置函數?

attribute和property的區別

document load和document DOMContentLoaded兩個事件的區別

=== 和 == , [] === [], undefined === undefined,[] == [], undefined == undefined

typeof能夠得到哪些值

什麼是“use strict”,好處和壞處

函數的作用域是什麼?js 的作用域有幾種?

JS如何實現重載和多態

常用的陣列api, 字串api

原生事件綁定(跨流覽器), dom0和dom2的區別?

給定一個元素獲取它相對於視圖視窗的座標

如何實現圖片滾動懶載入

js 的字串類型有哪些方法? 規則運算式的函數怎麼使用?

深拷貝

編寫一個通用的事件監聽函數

web端cookie的設置和獲取

setTimeout和promise的執行順序

JavaScript 的事件流模型都有什麼?

navigator物件, location和history

js的垃圾回收機制

記憶體洩漏的原因和場景

DOM事件的綁定的幾種方式

DOM事件中target和currentTarget的區別

typeof 和 instanceof 區別, instanceof原理

js動畫和css3動畫比較

JavaScript 倒計時(setTimeout)

js處理異常

js的設計模式知道那些

輪播圖的實現, 以及輪播圖元件開發, 輪播10000張圖片過程

websocket的工作原理和機制。

手指點擊可以觸控的螢幕時, 是什麼事件?

什麼是函數柯裡化?以及說一下JS的API有哪些應用到了函數柯裡化的實現?(函數柯裡化一些瞭解,

以及在函數式程式設計的應用, 最後說了一下JS中bind函數和陣列的reduce方法用到了函數柯裡化。 )

JS代碼調試

ES6

談一談 promise

所有的 ES6 特性你都知道嗎?如果遇到一個東西不知道是 ES6 還是 ES5, 你該怎麼區分它

es6的繼承和es5的繼承有什麼區別

promise封裝ajax

let const的優點

es6 generator 是什麼, async/await 實現原理

ES6和node的commonjs模組化規範區別

箭頭函數, 以及它的this

電腦網路

HTTP協定頭含有哪些重要的部分, HTTP狀態碼

網路url輸入到輸出怎麼做?

性能優化為什麼要減少 HTTP 訪問次數?

Http請求的過程與原理

https(對是https)有幾次握手和揮手?https的原理。

http有幾次揮手和握手?TLS的中文名?TLS在哪一網路層?

TCP連接的特點, TCP連接如何保證安全可靠的?

為什麼TCP連接需要三次握手, 兩次不可以嗎,為什麼

為什麼tcp要三次握手四次揮手?

tcp的三次握手和四次揮手畫圖(當場畫寫ack 和 seq的值)?

tcp與udp的區別

get和post的區別?什麼情況下用到?

http2 與http1 的區別?

websocket

什麼是tcp流,什麼是http流

babel是如何將es6代碼編譯成es5的

http2的持久連接和管線化

功能變數名稱解析時是tcp還是udp

功能變數名稱發散和功能變數名稱收斂

Post一個file的時候file放在哪的?

HTTP Response的Header裡面都有些啥?

流覽器相關

跨域,為什麼JS會對跨域做出限制

前端安全:xss,csrf...

流覽器怎麼載入頁面的?script腳本阻塞有什麼解決方法?defer和async的區別?

流覽器強緩存和協商緩存

流覽器的全域變數有哪些

流覽器同一時間能夠從一個功能變數名稱下載多少資源

按需載入,不同頁面的元素判斷標準

web存儲、cookies、localstroge等的使用和區別

流覽器的內核

如何實現緩存機制?(從200緩存,到cache到etag再到)

說一下200和304的理解和區別

什麼是預載入、懶載入

一個 XMLHttpRequest 實例有多少種狀態?

dns解析原理,輸入網址後如何查找伺服器

伺服器如何知道你?

流覽器渲染過程

ie的某些相容性問題

session

拖拽實現

拆解url的各部分

工程化

對webpack,gulp,grunt等有沒有瞭解?對比。

webpack的入口檔怎麼配置,多個入口怎麼分割。

webpack的loader和plugins的區別

gulp的具體使用。

前端工程化的理解、如何自己實現一個檔打包,比如一個JS檔裡同時又ES5 和ES6寫的代碼,如何編譯相容他們

模組化

對AMD,CMD,CommonJS有沒有瞭解?

為什麼要模組化?不用的時候和用RequireJs的時候代碼大概怎麼寫?

說說有哪些模組化的庫,有瞭解過模組化的發展的歷史嗎?

分別說說同步和非同步模組化的應用場景,說下AMD非同步模組化實現的原理?

如何將專案裡面的所有的require的模組語法換成import的ES6的語法?

使用模組化載入時,模組載入的順序是怎樣的,如果不知道,根據已有的知識,你覺得順序應該是怎麼樣的?

框架

使用過哪些框架?

zepto 和 jquery 是什麼關係,有什麼聯繫麼?

jquery源碼如何實現選擇器的,為什麼$取得的物件要設計成陣列的形式,這樣設計的目的是什麼

jquery如何綁定事件,有幾種類型和區別

什麼是MVVM,MVC,MVP

Vue和Angular的雙向資料綁定原理

Vue,Angular組件間通信以及路由原理

react和vue的生命週期

react和vue的虛擬dom以及diff演算法

vue的observer,watcher,compile

react和angular分別用在什麼樣的業務嗎?性能方面和MVC層面上的區別

jQuery物件和JS的Element有什麼區別

jQuery物件是怎麼實現的

jQuery除了它封裝了一些方法外,還有什麼值得我們去學習和使用的?

jQuery的$(‘xxx’)做了什麼事情

介紹一下bootstrap的柵格系統是如何實現的

Nodejs

對nodejs有沒有瞭解

Express 和 koa 有什麼關係,有什麼區別?

nodejs適合做什麼樣的業務?

nodejs與php,java有什麼區別

Nodejs中的Stream和Buffer有什麼區別?

node的非同步問題是如何解決的?

node是如何實現高併發的?

說一下 Nodejs 的 event loop 的原理

資料結構

基本資料結構:(陣列、佇列、鏈表、堆、二叉樹、雜湊表等等)

8種排序演算法,原理,以及適用場景和複雜度

說出越多越好的費波拉切數列的實現方法?

性能優化

cdn的用法是什麼?什麼時候用到?

流覽器的頁面優化?

如何優化 DOM 操作的性能

單頁面應用有什麼SEO方案?

單頁面應用首屏顯示比較慢,原因是什麼?有什麼解決方案?

其他

規則運算式

前端渲染和後端渲染的優缺點

資料庫的四大特性,什麼是原子性,表的關係

你覺得前端體系應該是怎樣的?

一個靜態資源要上線,裡面有各種資源依賴,你如何平穩上線

如果要你去實現一個前端範本引擎,你會怎麼做

知道流媒體查詢嗎?

SEO

mysql 和 mongoDB 有什麼區別?

restful的method解釋

資料庫知識、作業系統知識

click在ios上有300ms延遲,原因及如何解決

移動端的適配,rem+媒體查詢/meta頭設置

移動端的手勢和事件;

unicode,utf8,gbk編碼的瞭解,亂碼的解決

三面、四面常問的開放性問題

你都看過什麼書?最近在看什麼書?

用過什麼框架?有沒有看過什麼框架的代碼?

有沒有學過設計模式?

說一說觀察者模式吧!能不能寫出來?

你最大的優點是什麼?那你最大的缺點呢?

你大學期間做過最瘋狂的事情是什麼?

你除了寫博客還有什麼輸出?

現在你的領導給你了一份工作,要求你一個星期完成,但你看了需求以後估計需要3周才能完成,你該怎麼辦?

平時關注的前端技術

如何規劃自己的職業生涯

專案過程中,有遇到什麼問題嗎?怎麼解決的?

最近在研究哪方面的東西?

請介紹一項你最熱愛、最擅長的專業領域,並且介紹的學習規劃。

請介紹你參與的印象最深刻的一個項目,為什麼?並且介紹你在項目中的角色和發揮的作用。

HR面

你為什麼要學習前端?

你平時的是怎麼學習前端的?有什麼輸出?

你覺得自己最好的項目是什麼?

身邊比較佩服的人有什麼值得你學習的?你為什麼沒有跟他們一樣?

同事的什麼問題會讓你接受不了

壓力最大的事情是什麼?

和同學做過的最好的項目?

身邊的朋友通常對你的評價是什麼

喜歡什麼樣的工作氛圍

如何看待加班

有沒有物件

意向城市

其他的offer

為什麼要錄取你?

大學裡花費時間最多的三件事情

週末都會幹什麼?

未來職業規劃

建議

面試的時候不要表現出自己想創業。敲黑板。

從來沒有看過源碼的話,建議從jQuery,zepto這之類的源碼入手,後期可以瞭解Vue,React常見的功能的源碼思路和實現。

專案經驗描述的時候不用太太太詳細,揀重點的講。(因為我就一直說一直說,最後面試官評價插不上話評價減分。)

兩次不可以嗎,為什麼

為什麼tcp要三次握手四次揮手?

tcp的三次握手和四次揮手畫圖(當場畫寫ack 和 seq的值)?

tcp與udp的區別

get和post的區別?什麼情況下用到?

http2 與http1 的區別?

websocket

什麼是tcp流,什麼是http流

babel是如何將es6代碼編譯成es5的

http2的持久連接和管線化

功能變數名稱解析時是tcp還是udp

功能變數名稱發散和功能變數名稱收斂

Post一個file的時候file放在哪的?

HTTP Response的Header裡面都有些啥?

流覽器相關

跨域,為什麼JS會對跨域做出限制

前端安全:xss,csrf...

流覽器怎麼載入頁面的?script腳本阻塞有什麼解決方法?defer和async的區別?

流覽器強緩存和協商緩存

流覽器的全域變數有哪些

流覽器同一時間能夠從一個功能變數名稱下載多少資源

按需載入,不同頁面的元素判斷標準

web存儲、cookies、localstroge等的使用和區別

流覽器的內核

如何實現緩存機制?(從200緩存,到cache到etag再到)

說一下200和304的理解和區別

什麼是預載入、懶載入

一個 XMLHttpRequest 實例有多少種狀態?

dns解析原理,輸入網址後如何查找伺服器

伺服器如何知道你?

流覽器渲染過程

ie的某些相容性問題

session

拖拽實現

拆解url的各部分

工程化

對webpack,gulp,grunt等有沒有瞭解?對比。

webpack的入口檔怎麼配置,多個入口怎麼分割。

webpack的loader和plugins的區別

gulp的具體使用。

前端工程化的理解、如何自己實現一個檔打包,比如一個JS檔裡同時又ES5 和ES6寫的代碼,如何編譯相容他們

模組化

對AMD,CMD,CommonJS有沒有瞭解?

為什麼要模組化?不用的時候和用RequireJs的時候代碼大概怎麼寫?

說說有哪些模組化的庫,有瞭解過模組化的發展的歷史嗎?

分別說說同步和非同步模組化的應用場景,說下AMD非同步模組化實現的原理?

如何將專案裡面的所有的require的模組語法換成import的ES6的語法?

使用模組化載入時,模組載入的順序是怎樣的,如果不知道,根據已有的知識,你覺得順序應該是怎麼樣的?

框架

使用過哪些框架?

zepto 和 jquery 是什麼關係,有什麼聯繫麼?

jquery源碼如何實現選擇器的,為什麼$取得的物件要設計成陣列的形式,這樣設計的目的是什麼

jquery如何綁定事件,有幾種類型和區別

什麼是MVVM,MVC,MVP

Vue和Angular的雙向資料綁定原理

Vue,Angular組件間通信以及路由原理

react和vue的生命週期

react和vue的虛擬dom以及diff演算法

vue的observer,watcher,compile

react和angular分別用在什麼樣的業務嗎?性能方面和MVC層面上的區別

jQuery物件和JS的Element有什麼區別

jQuery物件是怎麼實現的

jQuery除了它封裝了一些方法外,還有什麼值得我們去學習和使用的?

jQuery的$(‘xxx’)做了什麼事情

介紹一下bootstrap的柵格系統是如何實現的

Nodejs

對nodejs有沒有瞭解

Express 和 koa 有什麼關係,有什麼區別?

nodejs適合做什麼樣的業務?

nodejs與php,java有什麼區別

Nodejs中的Stream和Buffer有什麼區別?

node的非同步問題是如何解決的?

node是如何實現高併發的?

說一下 Nodejs 的 event loop 的原理

資料結構

基本資料結構:(陣列、佇列、鏈表、堆、二叉樹、雜湊表等等)

8種排序演算法,原理,以及適用場景和複雜度

說出越多越好的費波拉切數列的實現方法?

性能優化

cdn的用法是什麼?什麼時候用到?

流覽器的頁面優化?

如何優化 DOM 操作的性能

單頁面應用有什麼SEO方案?

單頁面應用首屏顯示比較慢,原因是什麼?有什麼解決方案?

其他

規則運算式

前端渲染和後端渲染的優缺點

資料庫的四大特性,什麼是原子性,表的關係

你覺得前端體系應該是怎樣的?

一個靜態資源要上線,裡面有各種資源依賴,你如何平穩上線

如果要你去實現一個前端範本引擎,你會怎麼做

知道流媒體查詢嗎?

SEO

mysql 和 mongoDB 有什麼區別?

restful的method解釋

資料庫知識、作業系統知識

click在ios上有300ms延遲,原因及如何解決

移動端的適配,rem+媒體查詢/meta頭設置

移動端的手勢和事件;

unicode,utf8,gbk編碼的瞭解,亂碼的解決

三面、四面常問的開放性問題

你都看過什麼書?最近在看什麼書?

用過什麼框架?有沒有看過什麼框架的代碼?

有沒有學過設計模式?

說一說觀察者模式吧!能不能寫出來?

你最大的優點是什麼?那你最大的缺點呢?

你大學期間做過最瘋狂的事情是什麼?

你除了寫博客還有什麼輸出?

現在你的領導給你了一份工作,要求你一個星期完成,但你看了需求以後估計需要3周才能完成,你該怎麼辦?

平時關注的前端技術

如何規劃自己的職業生涯

專案過程中,有遇到什麼問題嗎?怎麼解決的?

最近在研究哪方面的東西?

請介紹一項你最熱愛、最擅長的專業領域,並且介紹的學習規劃。

請介紹你參與的印象最深刻的一個項目,為什麼?並且介紹你在項目中的角色和發揮的作用。

HR面

你為什麼要學習前端?

你平時的是怎麼學習前端的?有什麼輸出?

你覺得自己最好的項目是什麼?

身邊比較佩服的人有什麼值得你學習的?你為什麼沒有跟他們一樣?

同事的什麼問題會讓你接受不了

壓力最大的事情是什麼?

和同學做過的最好的項目?

身邊的朋友通常對你的評價是什麼

喜歡什麼樣的工作氛圍

如何看待加班

有沒有物件

意向城市

其他的offer

為什麼要錄取你?

大學裡花費時間最多的三件事情

週末都會幹什麼?

未來職業規劃

建議

面試的時候不要表現出自己想創業。敲黑板。

從來沒有看過源碼的話,建議從jQuery,zepto這之類的源碼入手,後期可以瞭解Vue,React常見的功能的源碼思路和實現。

專案經驗描述的時候不用太太太詳細,揀重點的講。(因為我就一直說一直說,最後面試官評價插不上話評價減分。)

同類文章
Next Article
喜欢就按个赞吧!!!
点击关闭提示