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.
- Host: GitHub
- URL: https://github.com/dimianni/js_concepts
- Owner: dimianni
- Created: 2021-04-21T21:59:19.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2022-02-04T06:45:41.000Z (over 3 years ago)
- Last Synced: 2025-01-28T04:28:48.397Z (8 months ago)
- Topics: binding, callback, classes-and-objects, closures, hoisting, iife, javascript, object, promises, this-keyword
- Language: JavaScript
- Homepage:
- Size: 47.9 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
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
- IntervalsFor 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.