An open API service indexing awesome lists of open source software.

https://github.com/dimianni/js_concepts

JavaScript concepts that are crucial to understand.
https://github.com/dimianni/js_concepts

binding callback classes-and-objects closures hoisting iife javascript object promises this-keyword

Last synced: 7 months ago
JSON representation

JavaScript concepts that are crucial to understand.

Awesome Lists containing this project

README

          

# 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:

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

## Usage

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

```bash
node 01_types.js
```

NOTE: [Node](https://nodejs.org/en/) 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?"*](https://medium.com/javascript-scene/javascript-es6-var-let-or-const-ba58b8dcde75) by Eric Elliott (@ericelliott).

[*"Master the JavaScript Interview: What is a Closure?"*](https://medium.com/javascript-scene/master-the-javascript-interview-what-is-a-closure-b2f0d2152b36) by Eric Elliott (@ericelliott).

[*"Learn ES6 The Dope Way Part II: Arrow functions and the ‘this’ keyword"*](https://www.freecodecamp.org/news/learn-es6-the-dope-way-part-ii-arrow-functions-and-the-this-keyword-381ac7a32881/) by Mariya Diminsky (@mariyadiminsky).

[*"Understanding JavaScript Prototypes"*](https://medium.com/backticks-tildes/javascript-prototypes-ee46810e4866) by Femi.

[*"JavaScript Prototype and Prototype Chain explained."*](https://chamikakasun.medium.com/javascript-prototype-and-prototype-chain-explained-fdc2ec17dd04) by Chamika Kasun (@chamikabm).

[*"JavaScript Classes, Inheritance, and Prototype Chaining (ES5 and ES6 Way)"*](https://medium.com/developers-arena/javascript-classes-inheritance-and-prototype-chaining-es5-and-es6-way-4b8e9416702b) by Kunal Tandon.

[*"JavaScript ES6: Classes"*](https://medium.com/@luke_smaki/javascript-es6-classes-8a34b0a6720a) by Luke Ruokaismaki.

[*"https://zellwk.com/blog/callbacks/"*](https://zellwk.com/blog/callbacks/) by Zell Liew.

[*"https://zellwk.com/blog/js-promises/"*](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.