摘要:前端面試總結先說背景,本人年月畢業,去年十月校招到今年月一直在做前端開發工作,年前打算換工作,就重新梳理下面試考點總結包含基礎,基礎,常見算法和數據結構,框架,計算機網絡相關知識,可能有的點很細,有的點很大,參考個人情況進行總結,方便對知識
前端面試總結
先說背景,本人2018年7月畢業,去年十月校招到今年10月一直在做前端開發工作,年前打算換工作,就重新梳理下面試考點閉包
總結包含:
JavaScript基礎,CSS基礎,常見算法和數據結構,React&Vue框架,計算機網絡相關知識,可能有的點很細,有的點很大,參考個人情況進行總結,方便對知識進行回憶,有的列舉出了參考答案,有的則在文末列舉了優秀回答
閉包的概念?
閉包的作用?
使用閉包的注意點?
事件機制事件3個階段 事件捕獲階段,處于目標階段,事件冒泡階段
默認為事件冒泡
ES6let const class 模塊化 等等常用ES6知識
箭頭函數作用,此處可以擴展考察 this指向問題
set map 相關
原型鏈4種繼承方式
new 原理
深拷貝&淺拷貝數據類型
基本數據類型和引用數據類型
跨域同源策略
CORS
JSONP
Iframe + document.domain
安全CSRF 跨站請求攻擊 (原理,保護措施 referer token 驗證碼,設置cookie的httponly屬性,post請求等等
XSS (同上
HTTP 方法幾種方法介紹
axios庫
輸入URL到頁面成功渲染的過程經典問題 (任何一個步驟都可以引申來考察
DNS解析 (具體的解析過程
TCP連接
http請求 (狀態碼考察
返回數據 瀏覽器渲染頁面 (頁面渲染過程
上面這些模塊下面一一例舉
DNS解析過程概念
瀏覽器緩存
系統緩存
路由器緩存
域名提供商
頂級域名服務器
主域名服務器
瀏覽器頁面渲染加載html構建頁面dom樹
解析css 構建渲染樹
渲染樹構建完成后,將渲染樹繪制到屏幕(回流和重繪
JS解析,會阻塞dom樹的構建
狀態碼http緩存 304
強制緩存 (expires cache-control
對比緩存 ( Etag & if-none-match last-modified & if-modified-since
301 302 區別(永久性重定向(帶緩存和臨時性重定向)
垃圾回收引用計數
標記清除
TypeScript使用就不說了,總結下優缺點
增加了代碼的可讀性和可維護性 編譯時錯誤提示
包容性 .js 可寫為 .ts
擁抱ES6, 框架支持
學習成本高如:類,泛型,接口
函數式編程概念 相同的輸入 永遠的到相同的輸出,且沒有任何副作用
副作用 比如 ajax請求 改變全局變量
優缺點 1.緩存性 2. 可移植性 3. 并行性 不需要共性內存
柯里化的概念,作用( 最好不要答裝逼 我還沒想到更好的答案
我列舉一個知乎答案: 統一接口,封裝的每一層都干干凈凈,邏輯表現清楚
IndexedDB特點
區別LocalStorage SessionStorage(1.同步 2.存儲大小)
WebSocket概念
特點
readyState
排序算法常見的排序算法 復雜度 穩定性
快速排序 不穩定 空間復雜度O(logn) 平均時間復雜度O(nlogn) 最差...O(n2)
選擇排序 不穩定 空間復雜度O(1) ...所有都是O(n2)
冒泡排序 穩定
堆排序 不穩定 空間復雜度O(1) ...所有都是O(nlogn)
插入排序
哈希表數組和鏈表的特點
搜索插入和刪除的時間復雜度O(1)
二叉樹先序遍歷
中序遍歷
后序遍歷
層序表里
樹高
鏈表翻轉鏈表
AVL樹 二叉查找樹特點
O(logn)
精度丟失問題0.1 + 0.1 != 0.2 (為什么
計算機內部的信息都是由二進制存儲的,但是有些浮點數沒法用二進制精準的表示出來
小數轉整數
Math.round() 四舍五入
Math.ceil() Math.floor()
生成隨機數引入 Math.random() [0,1) 的隨機小數
parseInt(Math.random()*(m-n)+n) [n, m)
Math.round(Math.random()*(m-n)+n) [n, m]
數組去重var set = new Set([1,1,2,2,3,3,3,3]) var arr = [...set]
indexOf
如何判斷數組是數組Array.isArray(arr) ES5的方法
arr instanceof Array
arr.__proto__.constructor === Array()
Object.prototype.toString.call(arr) === "[object Array]" //數據原型和對象原型定義的toString 方法不同
Object.prototype.toString.call(obj) === "[object Object]" // 如上
Object.prototype.toString.call(null) === "[object Null]" // 推薦此方法
數組指定個數去重 findDuplicate(num)es6 Set Map 相關操作
反轉字符串 JS異步異步解決歷史(Ajax的進化歷程)
Promise,Async/Await 用法 Promise 缺點
Promise API Promise.all & Promise.race
AjaxReadyState (0, 1, 2, 3, 4) 5中狀態
js實現ajax
優缺點
單/雙向數據綁定MV** 概念
vue/react 數據綁定機制
Vue生命周期
父子組件通信
雙向數據綁定
vm.$nextTick原理
React生命周期
Virtual-dom技術以及改良后的Diff算法
對比Vue.js
數組去重 數組扁平化 深拷貝和淺拷貝 Position屬性幾種屬性值
Box-sizing 屬性content-box border-box
盒模型 W3c標準盒模型和IE盒模型
兩欄布局 三欄布局常見自適應布局寫法
回流和重繪概念
舉例
如何避免 eg: DocumentFragment, Absolute
浮動偽元素和偽類
清除浮動常見3種方法
隱藏元素display none
visibility hidden 區別
垂直居中布局常見的垂直居中布局方法
前端性能優化列舉常見前端性能優化方法
列舉一些優秀回答
輸入URL你可以看到什么?
HTTP緩存
域名解析過程
vue生命周期
React生命周期
CSRF攻擊
水平垂直居中布局
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/100126.html
摘要:前端面試總結先說背景,本人年月畢業,去年十月校招到今年月一直在做前端開發工作,年前打算換工作,就重新梳理下面試考點總結包含基礎,基礎,常見算法和數據結構,框架,計算機網絡相關知識,可能有的點很細,有的點很大,參考個人情況進行總結,方便對知識 前端面試總結 先說背景,本人2018年7月畢業,去年十月校招到今年10月一直在做前端開發工作,年前打算換工作,就重新梳理下面試考點總結包含: ...
摘要:此篇文章并未如何教你怎么面試的時候吹逼,而是給一點點建議,如何更聰明地達到目的。據不完全統計,基本都是做管理后臺改。不要太沉溺和糾結于技術,把重心移到業務能力上,踏踏實實做事。 前言 ??對于很多剛畢業或者大四的同學,都會有個困惑,我如何學PHP,為什么知識會那么雜,然后實習中公司大概需要哪些要求。此篇文章并未如何教你怎么面試的時候吹逼,而是給一點點建議,如何更聰明地達到目的。 實習可...
摘要:獲取的對象范圍方法獲取的是最終應用在元素上的所有屬性對象即使沒有代碼,也會把默認的祖宗八代都顯示出來而只能獲取元素屬性中的樣式。因此對于一個光禿禿的元素,方法返回對象中屬性值如果有就是據我測試不同環境結果可能有差異而就是。 花了很長時間整理的前端面試資源,喜歡請大家不要吝嗇star~ 別只收藏,點個贊,點個star再走哈~ 持續更新中……,可以關注下github 項目地址 https:...
摘要:平日學習接觸過的網站積累,以每月的形式發布。年以前看這個網址概況在線地址前端開發群月報提交原則技術文章新的為主。 平日學習接觸過的網站積累,以每月的形式發布。2017年以前看這個網址:http://www.kancloud.cn/jsfron... 概況 在線地址:http://www.kancloud.cn/jsfront/month/82796 JS前端開發群月報 提交原則: 技...
閱讀 1408·2021-09-23 11:21
閱讀 3105·2019-08-30 14:14
閱讀 3187·2019-08-30 13:56
閱讀 4136·2019-08-30 11:20
閱讀 1949·2019-08-29 17:23
閱讀 2765·2019-08-29 16:14
閱讀 1693·2019-08-28 18:18
閱讀 1490·2019-08-26 12:14