面經(待分類整理)

 

# 深拷貝
# HTML5新特性
# h5標籤兼容性問題怎麼處理
# canvase壓縮圖片
# sessionStorage和localStorage
# html5語義化標籤有哪些
# 響應式佈局
# this指向
# 箭頭函數
# new一個實例的過程
# 節流防抖
頭條二面
# vue和react區別,事件綁定,動畫,生命週期,js和前端耦合度
# vue和react的diff算法,key
# 怎麼實現的輪播圖,邏輯
# setTimeout和requestAnimationFrame的區別,瀏覽器事件隊列
# 對移動端優化,canvase壓縮圖片,懶加載,base64,雪碧圖
# 長鏈接和短鏈接
# 三次握手四次揮手
# 後端高併發實現
# 強緩存和協商緩存
# 兩個代碼,jsonp實現和數字轉貨幣單位
# Gpu進程,瀏覽器多進程和多線程
 

  • 自我介紹,問項目
  • 項目中的問題:節流,預加載,小程序分包加載,xss攻擊及防護手段
  • 事件循環機制,我提到了微任務promise和nexttick,他接着問nexttick實現原理,沒答上來。後面又問了promise原理及實現,答上來了
  • float塌陷
  • 不肯定包含元素及內部元素的寬高,使內部元素垂直水平居中
  • js的實例、構造函數、原型對象、prototype、__proto__之間的關係
  • 小程序與h5的差異(由於個人項目裏包含了這兩樣,因此問到了。沒答上來,他想聽到的是小程序是雙線程,哎,一時沒有想起來)
  • 給個太陽,使用border畫出來
  • 從輸入url到頁面渲染的流程,html解析過程及堵塞狀況
  • 因爲問到了html解析,他出了一道題,內容是外聯js和內聯js若是報錯會不會使接下來的腳本沒法執行和會不會使圖片沒法加載(沒答上來,我就根據個人理解說都接下來的腳本都沒法執行,圖片都沒法加載,他跟我說回去試試就知道了)
  • 給了一個文件目錄,讓我用webpack手動打包
  • 你是如何學前端的
  • 思考題:一個棋盤似的草坪,下雨後,草坪上的部分棋盤格子有水窪,多個連續的棋盤格子連在一塊兒就是一個水坑,問如何計算出該草坪有多少水坑
  • 最後就是聊聊天了,我問他實習、工做給您的生活、開發思惟有什麼影響嗎?他就跟我說了下,校園裏學習的知識都是基本功,與在公司裏實際開發是徹底不一樣的,例如說this指向,面向對象式開發,在業務中是極爲複雜多變的
  • 做者:五環外的生活好苦啊
    連接:https://www.nowcoder.com/discuss/179509?type=2&order=0&pos=10&page=1
    來源:牛客網

    • 你認爲學習前端應該具有什麼(面試官原本很嚴肅,我一說到要熱愛前端,他一下就笑了,說幹哪行不熱愛本身的工做啊。)
    • 移動端自適應(viewport+媒體查詢+rem,不過他一直沒聽明白個人意思,是我講的有點急了,因此一直在反覆解釋,但最後問的:是否是每一個元素都要手動計算rem值,如何才能不這樣?沒答出來,應該使用cacl())
    • http緩存(最後問到了協商緩存你如何知道拿哪一個文件的last-modified進行對比,沒答上來)
    • vue組件如何通訊
    • vue-router原理,爲何vue-router不須要刷新頁面
    • 用了vue自身的什麼東西(我回答是組件化和模塊化,我以爲我回答的有點扯淡,但他沒有問下去)
    • 手寫代碼:利用promise對象實現當多個peomise對象resolved時才處理結果,當其中有promise對象爲rejected時處理error(沒寫出來,我最開始覺得是調用promise.all,原來不能調用是實現它。而後我從頭實現promise對象,寫到一半,它拿去看,說不是實現promise對象。那個時候真的是尷尬,突破天際的尷尬,我感受面試官可能都以爲我理解能力有問題了...)
    • 做者:五環外的生活好苦啊
      連接:https://www.nowcoder.com/discuss/179509?type=2&order=0&pos=10&page=1
      來源:牛客網

      • float塌陷
      • 盒模型及box-size屬性
      • 垂直居中
      • es6新特性
      • 箭頭函數及與普通函數的差異
      • 普通函數tihs指向判斷方式
      • 瞭解過node嗎(我說我用node寫過http服務器(這誰不會啊))
      • promise狀態及原理
相關文章
相關標籤/搜索