前端面試問到的題透過5k

專注的阿熊發表於2020-04-01

前端社招第一次面試問到的題【面試透過,工資5k】

1、px跟em的區別?
答:px就是一個絕對畫素單位,是固定值,而em是相對單位值,如果自身定義了font-size,則em會根據font-sizefont-size的大小變化而變化

2、get跟post請求的區別?

答:①首先我們要看看是基於什麼前提,如果沒有什麼前提,不適用任何規範,只考慮語法和理論上的HTTP協議,get和post請求基本就沒有什麼區別,只有名字不一樣罷了;
②如果是基於RFC規範的

【在理論上】get跟post雖然具有相同語法,但是有不同的語義,get是用來獲取資料的,post是用來傳送資料,post是用來傳送資料的,其他方面沒有區別。
【在實現上】各種瀏覽器就是這個規範的實現者,常見的有這些不同
1)get的資料在url中是可見的,post請求是不顯示在url中;
2)get請求對長度是有限制的,post請求長度是無限的;
3)get請求的資料可以收藏為書籤,post請求到的資料不可收藏為書籤;
4)get請求後,按後退和重新整理按鈕無影響,post資料如果這樣做就會被沖洗提交資料進而重新整理頁面;
5)get的編碼型別只有application/x-www-form-url一種,post的編碼型別有多種,比如 encodeapplication/x-www-form-urlencoded和 multipart/form-data匯率計算

3、js中的漸進增強和優雅降級是什麼?
漸進增強:針對低版本瀏覽器進行構建頁面,保證最基本的功能,然後再針對高階瀏覽器進行效果、互動等改進和追加功能達到更好的使用者體驗;
優雅降級:寫一些css和HTML程式碼時做一些處理,確保不再低階瀏覽器不相容時,也能達到原來的效果

4、jq中的取消事件跟開啟事件是什麼?
off 跟 on

5、如何最佳化前端頁面?
答:①頁面級別的最佳化:
1)CSS中的spriter精靈圖,可以直接從網上下載,減少了圖片的請求;
2)使用CDN
3)壓縮合並程式碼
4)使用DNS預解析
②程式碼級別的最佳化:
1)減少dom操作
2)非同步載入避免阻塞
3)事件代理
4)使用requestAnimationFrame代替setTimeout和setInterval
5)圖片懶載入等

6、什麼是物件導向?
答:物件導向就好比把每一件東西看成一個物件,程式碼主要是透過class來實現物件的功能。

7、Vue的原理有哪些?
答:響應式原理、MVVM原理、v-model資料繫結原理

8、Vuex的狀態有哪些?
答:5個。state、getters、mutation、actions、module。

9、Cookie跟Session的區別是什麼?
答:1)Cookie的登入資訊是存放在瀏覽器客戶端;Session的登入資訊是存在伺服器端;
2)Cookie的登入資訊在一定的時間內關閉瀏覽器後再開啟是有效的,而Session的登入資訊在關閉瀏覽器後就失效了;
3)Cookie的存放大小有限制,只有4k;而Session的儲存大小沒有限制;
4)Cookie比較安全,Session安全性較差

10、圖片的壓縮原理是什麼?
答:就是把圖片的十六進位制轉化為二進位制,減少了圖片的記憶體,達到壓縮的目的。

11、Vue中的data為什麼是一個函式而不是物件?
答:如果data是object物件的話,每次用的都是同一個記憶體空間,元件複用的時候狀態都是一樣的,這樣不利於頁面的渲染。

12、什麼是MVVM原理?
答:M模型 , V檢視, VM檢視模型,三大部分

13、為什麼要初始化css樣式?
答:因為不同瀏覽器本身就存在差異,各自的margin和padding等值代銷都不一樣,我們需要清除掉,防止頁面混亂。

14、你有了解過websocket嗎?
答:詳情請看HTML5的api部分實際開發都是用websocket,很少用ajax,websocket用法跟ajax差不了多少。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69946337/viewspace-2683898/,如需轉載,請註明出處,否則將追究法律責任。

相關文章