2020年秋招前端面試題
位元組(商業變現)一面
-
說說flex佈局、以及以下屬性flex-shrink/flex-grow/align-items
-
說說陣列有哪些方法,然後問了一道reduce方法的題
[‘x’, ‘v’, ‘sss’] => { x: true, v: true, … }把左邊的陣列變成右邊物件的形式 -
用new的形式建立的物件和直接呼叫方法的形式有啥區別
function Person(name){ this.name = name; return { } } const a = new Person('xxx') a.name = 'xxx' //
-
箭頭函式與普通函式的區別,箭頭函式可不可以用call/apply
-
xss和csrf和httpOnly
-
說一下原型,怎麼表示例項物件a的constructor
prototype __proto__ a.constructor
-
用原型的方式實現下面的class,使得它可以用new建立並可以呼叫裡面的方法
class Animal { constructor(name) { this.name = name; } static time = '週日' saySth (sth) { console.log(` ${Animal.time} ${this.name} say ${sth}`); } } const aCat = new Animal('kitty'); aCat.saySth('hello');
-
下面輸出什麼(考察let/var的區別)
for (let i = 0; i < 5; i++) { setTimeout(function() { console.log(i) }, 1000 * i); } // let 時正常輸出0,1,2,3,4。var時輸出的5個都是4
-
用js實現一個sum函式
// sum() // 0 // sum(1,2,3)(4)() // 10 // sum(1)(2)(2)(2)(3)() // 10
-
括號匹配
// 輸入字串的每個字元屬於'()[]{}'中的一種 // isBracketsValid(str) => console.log(isBracketsValid('([])')); // true console.log(isBracketsValid('([)]')); // false console.log(isBracketsValid('({}{}[][()])')); // true console.log(isBracketsValid('(((())))')); // true
位元組(商業變現)二面
- 程式和執行緒的概念
- 從瀏覽器輸入URL到顯示網頁會用到哪些協議
- http/https的區別;ssl加密過程;udp和tcp的區別
- 常見的網路攻擊以及其防禦方法
- 實現響應式的方法以及原理
rem、 媒體查詢、 flex、viewport - rem實現響應式的原理
- 用過哪些瀏覽器,瀏這些覽器的核心是啥,不同的核心有啥區別
- 實現 Promise.all 方法,寫不出來的話講講思路
- 用 Javascript 構造一個迴圈佇列,使得可以這樣呼叫
const loopQueue = new LoopQueue(['Surmon']) loopQueue.enqueue('SkyRover') loopQueue.enqueue('Evan') loopQueue.enqueue('Alice') console.log(loopQueue.size, loopQueue.isEmpty) // 4 false console.log(loopQueue.find(26)) // 'Evan' console.log(loopQueue.find(87651)) // 'Alice'
- 最近有什麼學習計劃
騰訊(CSIG金融雲)一面
- 實現一個防抖函式
- Async await與Promise、定時器的輸出問題,具體不記得了,類似下面
setTimeout(()=>{ console.log('settimeout'); }, 0) let promise = new Promise((resolve, reject) => { console.log('promise'); resolve('resolve') }) promise.then((value)=> console.log(value)) console.log('script start'); // 順序: // promise // script start // resolve // settimeout
- 實現深拷貝
- ES5實現promise
- 以下程式碼有什麼不好的地方?優化?
function x(url){ Let img = new Image() img.src = url }
- 不借助sort實現陣列排序(以obj.age為排序依據)
- 講講專案遇到的難點
- 講講上面2/6題的解題思路
- 箭頭函式和普通函式的區別
- Es6定義常量的方式是什麼?用es5怎麼實現const
雲從科技一面
- 寫一個vue元件,主要考察元件開發的流程,中間還問了
(1)key的作用,key=index會不會有問題。
(2)生命週期,我最常用的是created和mounted,問:這兩個的區別 - 寫一下es6新特性
let const
[…a]
Set Map
Promise
class
module
陣列新增的方法Array.from
async await generate
箭頭函式 - 箭頭函式與普通函式的區別
this指向、arguments、箭頭函式不能通過bind/call/apply改變this的指向、箭頭函式不能作為建構函式不,能用new建立例項……箭頭函式沒有原型屬性、箭頭函式不能當做Generator函式,不能使用yield關鍵字 - 陣列方法還有哪些
push
pop
shift unshift
splice slice
forEach
map
filter
indexOf lastIndexOf
includes
reduce - 寫一下常見狀態碼
200 成功返回
304 協商快取,強快取(這兩個是面試官說的)沒改變,不返回新的資料
404 找不到資源
401 授權問題,session過期
500 伺服器端報錯
501 503 伺服器過載 - 協商快取和強快取的區別
- 反問環節, 公司現在主要用vue,後面可能用react。小程式、移動端、PC端都有涉及。
雲從科技二面
- 自我介紹和專案介紹
- vuex的工作機制
- vuex裡面的一個資料發生了變化(dispatch了),怎麼檢測到這個資料發生了變化?
我答:先用mapGetters獲取這個資料,然後用watch監聽 - vue mixin
- vue 的 is屬性
- sass mixin怎麼用的
- 還用過sass的哪些功能?extend,變數,function
- 在webpack裡面怎麼去處理sass?sass-loader
- 還用過哪些loader?style-loader, css-loader
- 用過哪些es6語法?
- 你在什麼場景下會用到Set? 我答:陣列去重
- 如果陣列裡有複雜型別的元素,可以去重嗎?
- 為什麼從實習的公司離職?
- 反問環節。
雲從科技三面(hr面)
- hr面試的常見問題。
浩鯨雲端計算一面
- 自我介紹
- 對大學課程的理解
- 這道筆試題的答案?原因?
for(var I = 0; I < 10; i++){ settimeout(function(){ console.log(i); }, 0) }
- 箭頭函式。上面那題的function裡面的this指向誰? window
- 可以用什麼方式改變this?
- bind可以再次繫結嗎?我答可以,叫我自己驗證一下。
答案是不可以。function func1(){} let func2 = func1.bind('a'); let func3 = func2.bind('b');
上面是面試官寫的例子,說bind裡面的引數不一定要物件的,字串也可以。 - cookie是怎麼從客戶端傳送給伺服器的,伺服器又是怎麼傳送給客戶端的?
- 用過什麼版本控制工具?
- 你實習做的專案後端是用什麼寫的?
- 你現在還可以運算元據庫嗎?
- 如果聯調的時候介面不對,你會怎麼做?是直接告訴後端同事嗎?
- 如果介面需要調整,要你自己去改後端程式碼,能不能做到?
- 反問環節。
浩鯨雲端計算二面
- 問專案、怎麼學習、規劃等等
金山雲一面
- 怎麼學習前端的
- 箭頭函式的特點,作用
- 用canvas繪製一個按鈕
- css3新增的選擇器
- HTML5狀態碼
- 跨域解決方案
- vue元件生命週期,獲取dom元素在哪個週期,怎麼獲取
- 前端的難點
- 未來1-3年的技術規劃
金山雲二面
- 聊專案、規劃、學習路線等等
58同城一面
- 自我介紹
- 專案介紹
- vue元件通訊
- Vuex的工作機制
- vue-router雜湊模式的原理
- 空間複雜度為O(1)的前提下實現翻轉: www.58.com -> com.58.www
- css自適應的兩欄
- 行末怎麼顯示省略號
- 適配方案
- 想問webpack,我說了解不深
- 想問canvas,我說了解不深
58同城二面
- 問專案、學習路線、職業規劃等等
58同城三面(hr面)
- hr面試的常規問題
金山辦公一面
- 自我介紹
- css盒子模型,如果要變為標準模型怎麼寫:box-sizing: content-box;
- 垂直居中的方法
- js都用過哪些
- let, const, var的區別
- 箭頭函式和普通函式的區別
- 普通函式的this指向除了指向它的呼叫者,還有哪些?new, call, apply,
- 用過哪些es6語法
- vue生命週期
- 父元件裡面有一個子元件,它們的生命週期順序是怎樣的?父元件從開始到beforeMount -> 子元件從開始到mounted ->父元件mounted
- 元件通訊
- a t t r s 和 attrs和 attrs和lisener的一個具體問題(元件通訊的方法裡有一種就是用 a t t r s 和 attrs和 attrs和lisener)
- 你是有用過provide和inject嗎(元件通訊的方法裡有一種就是用provide和inject)
- computed和watch的區別
- 如果一建立元件就要執行watch裡面的程式碼,應該用watch的哪個屬性?(官網文件有)
- 專案上寫了用axios封裝網路請求,怎麼封裝的?
- axios 攔截器用過嗎?
- 有沒有用webpack自己構建過專案
- 現在在哪
- 反問環節。
CVTE一面
- 自我介紹,專案中印象比較深的
- http常見狀態碼,你提到的304,使用快取的步驟?
- CSRF體現以及防禦辦法。
- 跨域問題的解決方案?
- JSONP的原理?
- 用了哪些Es6語法?
- 怎麼實現深拷貝?我說了兩個方法,問:用JSON的方法有什麼缺點?
- Array裡哪些方法是會改變原陣列的?
- 把array A和array B裡的元素不重複的放進C裡,有好幾種方法
- 原型繼承是怎樣的?怎麼讓B繼承於A?用了prototype以後需要做些什麼?我答了重置constructor,面試官說還要繫結作用域,
- bind/call/apply的區別?
- 怎麼使用js測試CPU的壓力?用setTimeout/setInterval來測試實際等待輸出的時間與理論上所需的時間做對比,看是否有偏差
- 閉包的優缺點?講到記憶體回收,說一下js的記憶體回收的機制?
- 反問環節。
CVTE二面
- 專案中印象比較深的點,你說到的快取問題,為什麼會出現這個bug
- 怎麼去提升頁面的速度?我說到精靈圖,他問用精靈圖有什麼缺點
- 有很多個網路請求,後一個的開始依賴於前一個的返回值,怎麼實現
- 函式防抖的實現,這裡它一直叫我修改到最精簡的版本,中間出現過bug還問我哪裡有沒有問題
- vue3.0的變化,我答了雙向資料繫結的原理變了,他問為什麼用proxy,它有啥優點
- 邏輯題:燒繩子
- 怎麼學習前端的,看什麼書,關注什麼部落格,側重於哪方面?
- 你對前端的哪個領域更感興趣(移動端,pc端,程式端),答:移動端,問:為甚麼
- 最近關注過前端什麼新技術,我答了es2020,他問es2020哪些語法
玄武科技一面
- 專案難點
- 作用域鏈
- 原型問題
- Css盒子在怪異模式和標準模式的區別
玄武科技二面
- vue雙向資料繫結的原理
- js的事件模型
- salesforce的理解
- 前端開發的必備素質
玄武科技hr面
- 自我介紹
- 父母在哪裡工作,家在哪
- 首選工作城市,家人同意嗎
- 作為技術崗,我作為女生的優勢
- 有沒有同時在考公務員或者教師
- 為什麼選擇了前端?不考慮測試或者後臺
相關文章
- 2017年秋招前端面試題(二)——-CSS前端面試題CSS
- 2017年秋招前端面試題(一)——-HTML前端面試題HTML
- 前端秋招面試總結前端面試
- 2017年秋招二十套前端面試題分享前端面試題
- 2017年秋招史上最全前端面試題合集前端面試題
- 2023秋招前端面試必會的面試題前端面試題
- Java秋招校招面試Java面試
- 2020年秋招各大公司面試彙總面試
- 【Java】幾道常見的秋招面試題Java面試題
- 【秋招】京東_資料分析崗_面試題整理面試題
- 華為秋招筆試題筆試
- 2017年——秋招面試總結(網宿、美圖)面試
- 2017年秋招80%-應聘者都不及格的-JS-面試題JS面試題
- 秋招感思
- 2017 Android秋招面試總結Android面試
- 某物秋招SDL安全工程師面試工程師面試
- 【面試】-阿里前端社招面試面試阿里前端
- 社招前端二面面試題總結前端面試題
- 2017年秋招Android面試的21個重難點Android面試
- 秋招面試總結(2017-10-26)面試
- 某信服安全服務工程師秋招面試工程師面試
- 前端開發攻城獅——秋招經驗帖前端
- 阿里秋招啦阿里
- 2020年10月web前端面試題與面試感想Web前端面試題
- 2020年秋招聯發科小米等20家公司面經總結
- [面試]騰訊資料分析秋招四面經歷面試
- 社招中級前端筆試面試題總結前端筆試面試題
- 新手程式設計師該如何準備面試?【備戰春招/秋招系列】程式設計師面試
- 我的2018春招實習+秋招總結【前端開發】前端
- “寒冬中”三年前端社招面試經驗前端面試
- 2020年前端面試題前端面試題
- 2020年前端面試題(10題)前端面試題
- 阿里春招前端面試(1)阿里前端面試
- 寒冬中的前端社招面試前端面試
- 阿里前端社招面試總結阿里前端面試
- 愛奇藝校招面試題面試題
- 【面試】社招中級前端筆試面試題總結-答案及擴充前端筆試面試題
- web 前端秋招總結(內附面經)|掘金技術徵文Web前端