2017年9月4日,參加360前端面試。一面、二面、三面都過了,很尷尬,卻在HR面被被pass了。前端
一面主要問的是基礎,js基礎必定要紮實:vue
一、vue1.0到vue2.0的變化?組件之間如何通訊?react
二、webpack主要作了什麼?怎麼打包的?webpack
三、模塊化是作什麼的?模塊化解決了什麼問題?模塊化有什麼優勢呢?web
AMD、CMD、commonJS這些要了解,再瞭解一些原理。面試
四、對象的淺複製以及如何繼承原型鏈?ajax
var obj = {promise
a: 'liming'框架
}async
淺複製:for in循環一下或者Object.assign(target, source)
它的原型鏈上還有一些屬性,怎麼繼承原型鏈上的屬性
《JavaScript高級程序設計》第六章169頁上有講,兩種辦法
五、說了一長串,function、Object之間的關係,其實就是考原型鏈了
六、ES6 let const 與var之間區別
let、const擁有塊級做用域,let在塊級做用域中不存在變量聲明提高,塊級做用域中造成封閉的做用域,凡是在聲明以前使用變量都是會報錯
七、事件機制(事件捕獲、目標事件、事件冒泡) 事件委託
八、怎麼樣好幾個ajax請求並列執行?
我說了poromise.all()和async以及await,而後就引出來了個問題
promise、async、await是怎麼個回事呢?有什麼關係嗎?
九、js是單線程的,有一個運算和耗時,會形成頁面卡頓,怎麼讓他運行不影響後續代碼的運行?
說了web worker
十、HTTP一些常見的狀態碼?302
十一、ES6 Class的原理?構造函數?
二面主要問了一些框架的問題:
一、仍是webpack 、js模塊化
二、vue 2.0加上.sync修飾符有沒有破壞單項數據流?
三、vue源碼有沒有了解?Observe、Watcher以及指令怎麼實現的?數據變化怎麼處罰DOM更新的?
四、react和vue的區別?react虛擬DOM
五、職業規劃?怎麼學習的
三面:
怎麼樣實現jstree那樣的東東?說說你的實現思路?