Advanced Javascript

Foundation

Types In JavaScript

Foundation (1)

click to edit

Foundation (2)

Foundation (6)

Call Stack + Memory Heap

Writing Optimized Code

Interpreter/ Compiler/ JIT Compiler

Javascript Engine

Stack Overflow + Memory Leaks

Garbage Collection

Javascript Runtime

Single Threaded Model

Node.js

Execution Context

Lexical Environment

Scope Chain

Hoisting

Function Invocation

Function Scope vs Block Scope

Dynamic vs Lexical Scope

this - call, apply, bind

1. Closures

Static vs Dynamically Typed

Primitive Types

Pass By Reference vs Pass by Value

Type Coercion

Arrays, Functions, Objects

2. Prototypal Inheritance

Functions vs Objects

Scheme + Java

IIFE

Higher Order Functions

Object Oriented Programming

new keyword

Prototype

ES6 Classes

Java

Inheritance

Object.create()

Private vs Public

Functional Programming

Pure Functions

Referential Transparency

Partial Application

Compose

Curry

Pipe

Composition vs Inheritance

Error Handling

Modules in Javascript

Asynchronous Javascript

this keyword

Microtask Queue (Job Queue)

Task Queue (Callback Queue)

Callbacks

Promises

Async/Await

Event loop

Web APIs

UMD

AMD

CommonJS

IIFE

Native ES Modules

4 Principles of OOP