Skip to content

JavaScript concepts that are crucial to understand.

Notifications You must be signed in to change notification settings

dimianni/JS_Concepts

Repository files navigation

Important JavaScript concepts.

In this repository, I have gathered some of the most important concepts in JavaScript:

  • Data types
  • Primitive/Reference values
  • Scope
  • Hoisting
  • Let vs Const
  • Closures
  • IIFE's
  • Bind, Call, and Apply
  • this
  • Objects (and prototypes)
  • Classes
  • Callbacks (and the event loop)
  • Promises
  • Intervals

For some of them, I have added articles that helped me understand the concept. Full list of articles can be found below.

To clone the repo, run the following command:

git clone https://github.com/dimianni/JS_Concepts.git

Usage

Type in 'node' and 'filename' in the terminal to execute the code. For instance:

node 01_types.js

NOTE: Node has to be installed globally on your machine. It is an environment which allows the execution of JavaScript locally on your machine.

TIP: after typing 'node 02' press TAB to autocomplete the file name.

Articles

"JavaScript ES6+: var, let, or const?" by Eric Elliott (@ericelliott).

"Master the JavaScript Interview: What is a Closure?" by Eric Elliott (@ericelliott).

"Learn ES6 The Dope Way Part II: Arrow functions and the ‘this’ keyword" by Mariya Diminsky (@mariyadiminsky).

"Understanding JavaScript Prototypes" by Femi.

"JavaScript Prototype and Prototype Chain explained." by Chamika Kasun (@chamikabm).

"JavaScript Classes, Inheritance, and Prototype Chaining (ES5 and ES6 Way)" by Kunal Tandon.

"JavaScript ES6: Classes" by Luke Ruokaismaki.

"https://zellwk.com/blog/callbacks/" by Zell Liew.

"https://zellwk.com/blog/js-promises/" by Zell Liew.

Contributing

Pull requests are welcome. Feel free to add any other JavaScript concept that you find important.