[閱 #1] 推薦一份前端面試題給你

「閱」——JSCourse 旗下欄目,專門推薦我們為大家精心挑選的優質 JavaScript 相關技術內容

大家好,我是小 J, 歡迎大家來到 jscourse 「閱」欄目的第一期,本期我們為大家精心挑選了一份前端面試題。

這份面試題是由國外一名前端工程師——Boris Cherny 制作的。內容非常豐富,涵蓋了基礎概念、編碼(不同難易程度都有)、調試以及系統設計這些方面很經典的題目。我們選擇幾個題目來給大家看一下。

基礎概念題

  • 什么是原型繼承?它和類繼承的區別是什么?
  • **this **的工作原理是什么?
  • 什么是 閉包
  • ......

編程題

  • 實現一個 **filter **函數(簡單)
  • 實現檢查一個數是否為質數的函數 (簡單)
  • 實現一**個 sort **函數(中等)
  • 實現一個鏈表(難)
  • 實現一個 HashMap 類(難)
  • ......

調試題

1 我想讓如下代碼輸出 “hey amy”,但卻輸出了 “hey arnold”,這是為什么?

function greet(person) {
  if (person == { name: 'amy' }) {
    return 'hey amy'
  } else {
    return 'hey arnold'
  }
}
greet({ name: 'amy' })

2 我想讓如下代碼輸出 “doggo”,但卻輸出了 “undefined”,這是為什么?

let dog = {
  name: 'doggo',
  sayName() {
    console.log(this.name)
  }
}
let sayName = dog.sayName
sayName()

...

系統設計題

  • 請描述如何實現一個 auto complete 組件(包括前端和后端的實現)
  • 如何實現一個簡單的 twitter 應用(你可以換成微博)
  • ......

小編覺得這些題目還是比較全面的,考察到了基礎的 JavaScript 相關的技術知識點。把這份面試題推薦給你,希望你可以認認真真地將它做完,相信對你一定會有幫助!

點擊 這里 獲取完整的面試題,面試題是英文的,但是都很簡單,大家一定能看懂題目意思,如果實在看不懂題目意思或者做的過程中有問題的,可以通過「jscourse」微信公眾號,點擊「學習交流」菜單和大家一起討論交流以及咨詢。

關注「jscourse」微信公眾號獲取最新課程和學習資料

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容