This repository was created with the intention of helping developers master their concepts in JavaScript. It is not a requirement, but a guide for future studies. It is based on an article written by Stephen Curtis and you can read it here. Feel free to contribute.
- Call Stack
- Primitive Types
- Value Types & Reference Types
- Implicit, Explicit, Nominal, Structuring & Duck Typing
- == vs === vs typeof
- Function Scope, Block Scope & Lexical Scope
- Expression vs. Statement
- Hoisting
- IIFE, Modules & Namespaces
- Message Queue & Event Loop
- setTimeout, setInterval & requestAnimationFrame
- Expensive Operation & Big O Notation
- JavaScript Engines
- Binary, Hex, Dec, Scientific Notation
- Bitwise Operators, Type Arrays & Array Buffers
- DOM & Layout Trees
- new, Constructor, instanceof & Instances
- Prototype Inheritance & Prototype Chain
- Object.create & Object.assign
- Factories & Classes
- Member Properties & Properties on the Prototype
- for, while vs map, reduce, filter
- map, reduce, filter
- Closures
- High Order Functions
- Abstract Data Structures in JavaScript
- Recursion
- Algorithms
- Inheritance, Polymorphism & Code Reuse
- Design Patterns
- Partial Functions, Currying, Compose, and Pipe
- this, call, apply & bind
- Clean Code
- π Understanding Javascript Call Stack, Event Loops β Gaurav Pandvia
- π Understanding the JavaScript Call Stack β Charles Freeborn
- π Javascript: What Is The Execution Context? What Is The Call Stack? β Valentino Gagliardi
- π What is the JS Event Loop and Call Stack? β Jess Telford
- π Call Stack β MDN
- π Understanding Execution Context and Execution Stack in Javascript β Sukhjinder Arora
- π How JavaScript Works: An Overview of the Engine, the Runtime, and the Call Stack β Alexander Zlatkov
- π₯ Javascript: the Call Stack explained β Coding Blocks India
- π₯ The JS Call Stack Explained In 9 Minutes β Colt Steele
- π₯ JavaScript Execution Stack β Codecademy
- π₯ What is the Call Stack? β Eric Traub
- π₯ The Call Stack β Kevin Drumm
- π₯ Understanding JavaScript Execution β Codesmith
- π₯ Call Stack & Event Loop β movies com
- π How numbers are encoded in JavaScript β Dr. Axel Rauschmayer
- π What You Need to Know About JavaScript Number Type β Max Wizard K
- π What Every JavaScript Developer Should Know About Floating Point Numbers β Chewxy
- π The Secret Life of JavaScriptΒ Primitives β Angus Croll
- π Primitive Types β Flow
- π₯ JavaScript Reference vs Primitive Types β Academind
- π₯ JavaScript Primitive Types β Simon Sez IT
- π₯ Javascript Primitive and Reference Types β Baljeet Singh
- π₯ Value Types and Reference Types in JavaScript β Programming with Mosh
- π₯ JavaScript Primitive Data Types β Avelx
- π Explaining Value vs. Reference in Javascript β Arnav Aggarwal
- π Understand Value and Reference Types in JavaScript β Zsolt Nagy
- π Primitive Types & Reference Types in JavaScript β Bran van der Meer
- π Value Types, Reference Types and Scope in JavaScript β Ben Aston
- π Back to roots: JavaScript Value vs Reference β Miro Koczka
- π Grasp βBy Valueβ and βBy Referenceβ in JavaScript β LΓ©na Faure
- π JavaScript Reference and Copy Variables β VΓtor Capretz
- π JavaScript Primitive vs Reference Values
- π₯ Javascript Pass by Value vs Pass by Reference β techsith
- π₯ JavaScript Value vs Reference Types β Programming with Mosh
- π What you need to know about Javascript's Implicit Coercion β Promise Tochi
- π JavaScript Type Coercion Explained β Alexey Samoshkin
- π Javascript Coercion Explained β Ben Garrison
- π What exactly is Type Coercion in Javascript? - Stack Overflow
- π You Don't Know JS: Types & Grammar [Book] β Kyle Simpson
- π JavaScript Double Equals vs. Triple Equals β Brandon Morelli
- π What is the difference between =, ==, and === in JS? β Codecademy
- π Should I use === or == equality comparison operator in JavaScript? β Panu Pitkamaki
- π == vs === JavaScript: Double Equals and Coercion β AJ Meyghani
- π Why Use the Triple-Equals Operator in JavaScript? β Louis Lazaris
- π What is the difference between == and === in JavaScript? β Craig Buckler
- π Why javascript's typeof always return "object"? β Stack Overflow
- π Checking Types in Javascript β Toby Ho
- π How to better check data types in JavaScript β Webbjocke
- π₯ JavaScript - The typeof operator β Java Brains
- π₯ Javascript typeof operator β DevDelight
- π You Don't Know JS: Scope & Closures [Book] β Kyle Simpson
- π The battle between Function Scope and Block Scope β Marius Herring
- π Emulating Block Scope in JavaScript β Josh Clanton
- π The Difference Between Function and Block Scope in JavaScript β Joseph Cardillo
- π Function Scopes and Block Scopes in JavaScript β Samer Buna
- π Understanding Scope and Context in JavaScript | Ryan Morr
- π JavaScript Scope and Closures β Zell Liew
- π Understanding Scope in JavaScript β Wissam Abirached
- π Speaking JavaScript -Β Variables: Scopes, Environments, and Closures β Dr. Axel Rauschmayer
- π Understanding Scope in JavaScript β Hammad Ahmed
- π₯ What Makes Javascript Weird ... and Awesome pt. 4 β LearnCode.academy
- π₯ Variable Scope in JavaScript β Kirupa Chinnathambi
- π₯ JavaScript Block Scope and Function Scope β mmtuts
- π₯ What the Heck is Lexical Scope? β NWCalvank
- π All you need to know about Javascript's Expressions, Statements and Expression Statements β Promise Tochi
- π Function Expressions vs Function Declarations β Paul Wilkins
- π JavaScript Function β Declaration vs Expression β Ravi Roshan
- π Function Declarations vs. Function Expressions β Mandeep Singh
- π Function Declarations vs. FunctionΒ Expressions β Anguls Croll
- π₯ Expressions vs. Statements in JavaScript β Hexlet
- π₯ JavaScript - Expression vs. Statement β WebTunings
- π Understanding Hoisting in JavaScript β Elizabeth Mabishi
- π JavaScript: What is Hoisting? β Brandon Morelli
- π Understanding Hoisting in JavaScript β Victor Ofoegbu
- π Scoping and Hoisting in JavaScript β Naveen Karippai
- π Hoisting in JavaScript β Ankush Chatterjee
- π Hoisting in JavaScript: a Quick Guide β LΓ©na Faure
- π A guide to JavaScript variable hoisting π© with let and const β Bhuvan Malik
- π Function Hoisting & Hoisting Interview Questions β Bhuvan Malik
- π Understanding Variables, Scope, and Hoisting in JavaScript β Tania Rascia
- π Javascript hoisting, var, let and const variables β Vojtech Ruzicka
- π₯ Hoisting in JavaScript Explained β mmtuts
- π₯ Hoisting - Beau teaches JavaScript β freeCodeCamp
- π₯ Hoisting in JavaScript Explained in (About) 5 Minutes β 5-Minute Web Dev
- π₯ JavaScript Hoisting Explained βPretty Printed
- π₯ JavaScript is Easy: What is Hoisting? β MakingDevelopers
- π Mastering Immediately-Invoked Function Expressions β Chandra Gundamaraju
- π Do ES6 Modules make the case of IIFEs obsolete?
- π A 10 minute primer to JavaScript modules, module formats, module loaders and module bundlers β Jurgen Van de Moere
- π 16. Modules β Exploring JS
- π ES modules: A cartoon deep-dive β Lin Clark
- π Understanding ES6 Modules β Craig Buckler
- π An overview of ES6 Modules in JavaScript β Brent Graham
- π ES6 Modules in Depth β NicolΓ‘s Bevacqua
- π ES6 modules, Node.js and the Michael Jackson Solution β Alberto Gimeno
- π₯ Immediately Invoked Function Expression - Beau teaches JavaScript β freeCodeCamp
- π₯ Understanding JavaScript IIFE
- π₯ JavaScript Modules: ES6 Import and Export β Kyle Robinson
- π₯ ES6 - Modules β Ryan Christiani
- π₯ ES6 Modules in the Real World β Sam Thorogood
- π₯ ES6 Modules β TempleCoding
- π JavaScript Event Loop Explained β Anoop Raveendran
- π The JavaScript Event Loop: Explained β Erin Sweson-Healey
- π What is the Event Loop in Javascript β WP Tutor.io
- π Understanding JS: The Event Loop β Alexander Kondov
- π Understanding the JavaScript Event Loop β Ashish Gupta
- π Event Loop in Javascript β Manjula Dube
- π The JavaScript Event Loop β Flavio Copes
- π How JavaScript works: Event loop β Alexander Zlatkov
- π₯ What the heck is the event loop anyway? | JSConf EU β Philip Roberts
- π₯ JavaScript Event Loop β ComScience Simplified
- π₯ I'm stuck in an Event Loop β Philip Roberts
- π setTimeout and setInterval β JavaScript.Info
- π Why not to use setInterval β Akanksha Sharma
- π setTimeout VS setInterval β Develoger
- π Using requestAnimationFrame β Chris Coyier
- π Understanding JavaScript's requestAnimationFrame() β JavaScript Kit
- π₯ Javascript: How setTimeout and setInterval works β Coding Blocks India
- π₯ setTimeout and setInterval in JavaScript β techsith
- π₯ JavaScript Timers β Steve Griffith
- π₯ JavaScript setTimeout, setInterval & clearInterval β DoingITeasyChannel
- π₯ JavaScript setTimeOut and setInterval Explained β Theodore Anderson
- π Big O Notation in Javascript β CΓ©sar AntΓ³n Dorantes
- π Time Complexity/Big O Notation β Tim Roberts
- π Big O in JavaScript β Gabriela Medina
- π Big O Search Algorithms in JavaScript β Bradley Braithwaite
- π Time Complexity Analysis in JavaScript β Jennifer Bland
- π Algorithms in plain English: time complexity and Big-O Notation β Michael Olorunnisola
- π₯ JavaScript: Intro to Big O Notation and Function Runtime β Eric Traub
- π₯ Essential Big O for JavaScript Developers β Dave Smith
- π₯ Big O Notation - Time Complexity Analysis β WebTunings
- π JavaScript Engines β Jen Looper
- π Understanding How the Chrome V8 Engine Translates JavaScript into Machine Code β DroidHead
- π Understanding V8βs Bytecode β Franziska Hinkelmann
- π How the V8 engine works? β Thibault Laurens
- π A Brief History of Googleβs V8 Javascript Engine β Clair Smith
- π Displaying numbers in JavaScript β Dr. Axel Rauschmayer
- π JavaScript Number Formats: As Easy As 1-2-3! β Michael Churchman
- π Numbers β JavaScript.Info
- π Speaking JavaScript ChapterΒ 11.Β Numbers [Book] β Dr. Axel Rauschmayer
- π Programming with JS: Bitwise Operations β Alexander Kondov
- π Using JavaScriptβs Bitwise Operators in Real Life β ian m
- π JavaScript Bitwise Operators β w3resource
- π Bitwise Operators in Javascript β Joe Cha
- π A Comprehensive Primer on Binary Computation and Bitwise Operators in Javascript β Paul Brown
- π How To Understand and Modify the DOM in JavaScript β Tania Rascia
- π JavaScript DOM Tutorial with Example β Guru99
- π What is the DOM? β Chris Coyier
- π Traversing the DOM with JavaScript β Zell Liew
- π Eloquent JavaScript [Book] β The Document Object Model
- π DOM Tree
- π Render Tree Construction β Ilya Grigorik
- π Inheritance and the prototype chain β MDN
- π Master the JavaScript Interview: Whatβs the Difference Between Class & Prototypal Inheritance? β Eric Elliott
- π Understanding JavaScript: Prototype and Inheritance β Alexander Kondov
- π Prototypal Inheritance β JavaScript.Info
- π How To Work with Prototypes and Inheritance in JavaScript β Tania Rascia
- π Master JavaScript Prototypes & Inheritance β Arnav Aggarwal
- π You Don't Know JS [Book] Chapter 5: Prototypes β Kyle Simpson
- π JavaScriptβs Prototypal Inheritance Explained Using CSS β Nash Vail
- π Prototypal Inheritance in JavaScript β Jannis Redmann
- π Classical and Prototypical Inheritance in JavaScript β Danny Cornelisse
- π Demystifying ES6 Classes And Prototypal Inheritance β Neo Ighodaro
- π Intro To Prototypal Inheritance β Dharani Jayakanthan
- π₯ Javascript Prototype Inheritance β Avelx
- π₯ JavaScript Prototype Inheritance Explained pt. I β techsith
- π₯ JavaScript Prototype Inheritance Explained pt. II β techsith
- π₯ JavaScript Prototype Inheritance Explained β Kyle Robinson
- π₯ Advanced Javascript - Prototypal Inheritance In 1 Minute
- π₯ An Overview Of Classical Javascript Classes and Prototypal Inheritance β Pentacode
- π Object.create() β MDN
- π Object.create in JavaScript β Rupesh Mishra
- π Object.create(): the New Way to Create Objects in JavaScript β Rob Gravelle
- π Basic Inheritance with Object.create β Joshua Clanton
- π Object.create() In JavaScript β GeeksforGeeks
- π Understanding the difference between Object.create() and the new operator β Jonathan Voxland
- π JavaScript Object Creation: Patterns and Best Practices β Jeff Mott
- π Dealing With Objects in JavaScript With Object.assign, Object.keys and hasOwnProperty
- π Copying Objects in JavaScript β Orinami Olatunji
- π Object.assign() β MDN
- π JavaScript: Object.assign() β Thiago S. Adriano
- π How To Use Classes in JavaScript β Tania Rascia
- π Javascript Classes β Under The Hood β Majid
- π ES6 Classes β Nathaniel Foster
- π Better JavaScript with ES6, Pt. II: A Deep Dive into Classes β Peleke Sengstacke
- π Understand the Factory Design Pattern in Plain JavaScript β Aditya Agarwal
- π JavaScript Factory Functions vs Constructor Functions vs Classes β Eric Elliott
- π JavaScript Factory Functions with ES6+ β Eric Elliott
- π Factory Functions in JavaScript β Josh Miller
- π The Factory Pattern in JS ES6 β SnstsDev
- π Class vs Factory function: exploring the way forward β Cristi Salcescu
- π₯ JavaScript Factory Functions β Programming with Mosh
- π₯ Factory Functions in JavaScript β Fun Fun Function
- π₯ Javascript Tutorial Function Factories β Crypto Chan
- π Javascript performance test - for vs for each vs (map, reduce, filter, find) β Deepak Gupta
- π Why and when to use forEach, map, filter, reduce, and find in JavaScript β Jeff Lombard
- π Array Methods Explained : Filter vs Map vs Reduce vs ForEach β Manoj Singh Negi
- π .map() vs .forEach() vs for () β Ryan P. C. McQuen
- π JavaScript Functional Programming β map, filter and reduce β Bojan Gvozderac
- π Learn map, filter and reduce in Javascript β JoΓ£o Miguel Cunha
- π JavaScriptβs Map, Reduce, and Filter β Dan Martensen
- π How to Use Map, Filter, & Reduce inΒ JavaScript β Peleke Sengstacke
- π JavaScript β Learn to Chain Map, Filter, and Reduce β Brandon Morelli
- π Javascript data structure with map, reduce, filter and ES6 β Deepak Gupta
- π Understanding map, filter and reduce in Javascript β Luuk Gruijs
- π Functional Programming in JS: map, filter, reduce (Pt. 5) β Omer Goldberg
- π JavaScript: Map, Filter, Reduce β William S. Vincent
- π Arrow Functions: Fat and Concise Syntax in JavaScript β Kyle Pennell
- π JavaScript: Arrow Functions for Beginners β Brandon Morelli
- π When (and why) you should use ES6 arrow functions β and when you shouldnβt β Cynthia Lee
- π JavaScript β Learn & Understand Arrow Functions β Brandon Morelli
- π (JavaScript )=> Arrow functions β sigu
- π₯ Map, Filter and Reduce β Lydia Hallie
- π₯ Functional JavaScript: Map, forEach, Reduce, Filter β Theodore Anderson
- π₯ JavaScript Array superpowers: Map, Filter, Reduce (part I) β Michael Rosata
- π₯ JavaScript Array superpowers: Map, Filter, Reduce (part 2) β Michael Rosata
- π₯ JavaScript Higher Order Functions - Filter, Map, Sort & Reduce β Epicop
- π₯ [Array Methods 2/3] .filter + .map + .reduce β CodeWithNick
- π₯ Arrow functions in JavaScript - What, Why and How β Fun Fun Function
- π Closures β MDN
- π I never understood JavaScript closures β Olivier De Meulder
- π Closure β JavaScript.Info
- π Understand JavaScript Closures With Ease β Richard Bovell
- π Understanding JavaScript Closures β Codesmith
- π Understand Closures in JavaScript β Brandon Morelli
- π A simple guide to help you understand closures in JavaScript β Prashant Ram
- π Understanding JavaScript Closures: A Practical Approach β Paul Upendo
- π Understanding JavaScript: Closures β Alexander Kondov
- π How to use JavaScript closures with confidence β LΓ©na Faure
- π JavaScript closures by example β tyler
- π₯ Javascript Closure β techsith
- π₯ Closures β Fun Fun Function
- π₯ Closures in JavaScript β techsith
- π₯ JavaScript Closures 101: What is a closure? β JavaScript Tutorials
- π₯ Closures β freeCodeCamp
- π₯ JavaScript Closures β CodeWorkr
- π Higher-Order Functions β Eloquent JavaScript [Book]
- π Higher-Order Functions in JavaScript β M. David Green
- π Higher Order Functions: Using Filter, Map and Reduce for More Maintainable Code β Guido Schmitz
- π First-class and Higher Order Functions: Effective Functional JavaScript β Hugo Di Francesco
- π Higher Order Functions in JavaScript β John Hannah
- π Higher-order Functions β Richard Bovell
- π Higher Order Functions in JavaScript β Zsolt Nagy
- π Fun With Higher Order Functions In JavaScript β Derick
- π Just a reminder on how to use high order functions β Pedro Filho
- π How to use JavaScript closures with confidence β LΓ©na Faure
- π JavaScript closures by example β tyler
- π₯ JavaScript Higher Order Functions & Arrays β Traversy Media
- π₯ Higher Order Functions β Fun Fun Function
- π₯ Higher Order Functions in Javascript β Raja Yogan
- π₯ Higher Order Iterators in JavaScript β Fun Fun Function
- π₯ Higher Order Functions in JavaScript β The Coding Train
- π Data Structures in JavaScript β Thon Ly
- π Algorithms and Data Structures in JavaScript β Oleksii Trekhleb
- π Data Structures: Objects and Arrays β Chris Nwamba
- π Data structures in JavaScript β Benoit Vallon
- π Playing with Data Structures in Javascript β Anish K.
- π The Little Guide of Queue in JavaScript β GermΓ‘n Cutraro
- π All algorithms writing with JavaScript in the book 'Algorithms Fourth Edition'
- π Collection of classic computer science paradigms in JavaScript
- π All the things you didn't know you wanted to know about data structures
- π₯ Algorithms in JavaScript β Seth Koch
- π₯ Algorithms In Javascript | Ace Your Interview β Eduonix Learning Solutions
- π₯ Data Structures and Algorithms in JavaScript β freeCodeCamp