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.
Table of Contents
Call Stack
Primitive Types
Value Types and Reference Types
Implicit, Explicit, Nominal, Structuring and Duck Typing
== vs === vs typeof
Function Scope, Block Scope and Lexical Scope
Expression vs Statement
IIFE, Modules and Namespaces
Message Queue and Event Loop
setTimeout, setInterval and requestAnimationFrame
JavaScript Engines
Bitwise Operators, Type Arrays and Array Buffers
DOM and Layout Trees
Factories and Classes
this, call, apply and bind
new, Constructor, instanceof and Instances
Prototype Inheritance and Prototype Chain
Object.create and Object.assign
map, reduce, filter
Pure Functions, Side Effects and State Mutation
Closures
High Order Functions
Recursion
Collections and Generators
Promises
async/await
Data Structures
Expensive Operation and Big O Notation
Algorithms
Inheritance, Polymorphism and Code Reuse
Design Patterns
Partial Applications, Currying, Compose and Pipe
Clean Code
Rails Long Term Support
Rails LTS provides security patches for old versions of Ruby on Rails (2.3, 3.2, 4.2 and 5.2)
Prevents you from data breaches and liability risks