騰訊前端面試題集錦
阿新 • • 發佈:2018-12-20
想要進入騰訊,首先會進行一些基礎知識的考核,這些基礎及時包括資料結構、演算法、資料庫、安全等方面,最後是關於性格和專案經驗的問題。
基礎知識
- prototype和proto的關係是什麼
- meta viewport原理
- 域名收斂是什麼
- float和display:inline-block;的區別
- 前端優化策略列舉
- 首屏、白屏時間如何計算
- 閉包
- 作用域鏈
- ajax如何實現、readyState五中狀態的含義
- jsonp如何實現
- 怎麼處理跨域
- restful的method解釋
- get和post的區別
- 事件模型解釋
- 編寫一個元素拖拽的外掛
- 編寫一個contextmenu的外掛
- 編寫web端cookie的設定和獲取方法
- 相容ie6的水平垂直居中
- 相容ie的事件封裝
- h5和原生android的優缺點
- 編寫h5需要注意什麼
- xss和crsf的原理以及怎麼預防
- css優先順序
- 如何實現點選radio的文字描述控制radio的狀態(通過label實現)
- delegate如何實現
- jsonp有什麼安全問題?為什麼有這些安全問題?
- 單鏈表和雙向連結串列的區別?
- 有用過reactjs?簡單說一下其生命週期方法
框架
如何瞭解這些前端的框架?如angular,react,vue。
angularjs
- angular的directive怎麼寫
- angular的髒檢查(雙向繫結)是如何實現的
- 依賴注入如何實現
- scope如何實現
- $parse模組如何實現(主要自己寫了一個類似的庫)
react
- react在setState後發生了什麼,請結合原始碼說說你的理解。
- flux解釋。
- 說說你對React框架的理解。
requirejs
- amd和cmd區別,怎麼了解到這些區別的,是否是去看了規範。
- requirejs那些經常用的方法,然後對其進行解釋。
Node
- Buffer模組是幹什麼的。
- Stream是什麼,使用的兩種模式。
- http模組如何將非同步處理方式實現成同步處理方式。
其他問題
- utf8和gbk的區別。
- 知道頁面上某個點的座標,如何獲取該座標上的所有元素。
- angular、react和jQuery適合哪些應用場景(建議檢視各個框架產生背景)。
- 7點15分小於180度的夾角是多少。
- 如何實現大數相加。
- 給5升和6升的水杯如何倒出3升的水。
- 一班喜歡足球的人60%,喜歡排球的70%,喜歡籃球的80%,求喜歡足球和排球的佔多少。
- 前端異常監測如何實現。
- 直播點贊按鈕的冒泡功能如何實現。
- js的uglify如何實現。
優化方面
- 前端工程化方面做了哪些東西,怎麼做。
演算法
什麼二叉樹,從一堆大數中選出滿足條件的數要求最快。