JavaScript 開發人員都應該知道的十個概念

來源:互聯網
上載者:User

標籤:產生   ref   async   工作   表達   面向   完全   理解   資料   

1. 原始值和引用值(Value vs. Reference)

理解對象、數組和函數是如何複製和傳遞到函數中的。瞭解引用值是被複製了什麼,理解原始值是通過複製值來進行複製和傳遞的。

 

2. 域(Scope)

理解全域域、函數域以及塊級範圍之間的區別。瞭解變數在哪裡是可用的,瞭解 JavaScript 引擎如何執行變數尋找。

 

3. 提升(Hoisting)

認識到變數和函數的聲明會被提升到聲明所在的上下文,即在變數的範圍內,不管變數在何處聲明,都會被提升到範圍的頂部,但是變數初始化的順序不變。認識到函數運算式不會被提升。

 

4. 閉包(Closures)

認識到一個函數會保留對在其內部建立的域的訪問,認識到這些可以讓我們做什麼,例如資料隱藏、記憶體化以及動態函數產生。

 

5. this

理解 this 綁定的規則。知道它的工作機制,知道在函數中如何判斷它等同於什麼,並且認識到為什麼它是有用的。

 

6. new

認識到它如何與物件導向編程產生聯絡。瞭解通過 new 調用的函數會發生什麼。理解通過使用 new 來自函數 prototype 屬性的繼承的對象是如何產生的。

  7. apply, call, bind

瞭解這些函數是如何工作的,瞭解如何使用它們。瞭解它們對 this 做了什麼。

 

8. 原型和繼承(Prototypes & Inheritance)

理解 JavaScript 中的繼承通過 [[Prototype]] 鏈進行工作。理解如何通過函數和對象設定繼承,以及 new 是如何協助我們實現的。瞭解 __proto__ 和 prototype 屬性是什麼,以及它們的作用。

 

9. 非同步 JS(Asynchronous JS)

理解事件迴圈,理解瀏覽器是如何處理使用者輸入、Web 請求和一般事件的。知道如何識別並正確實現非同步代碼。理解 JavaScript 中非同步和單線程分別是怎樣的。.

  10. 高階函數(Higher Order Functions)

理解這些函數是 JavaScript 中的第一類對象以及這意味著什麼,瞭解從另一個函數返回函數是完全合法的。瞭解閉包和高階函數允許我們使用的技術。

JavaScript 開發人員都應該知道的十個概念

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.