- Instructor: Hitesh Choudhary
 - YouTube Channel: Chai Aur Code
 - JavaScript Playlist: Chai Aur JavaScript
 
-  
Comment
- Single Line Comment
 - Multi Line Comment
 
 -  
Output
console.log()console.table()
 -  
Directive
use strict
 -  
Variable
varKeywordletKeywordconstKeyword
 -  
Datatype <-
- Primitive Data Type 
- Number
 - String
 - Boolean
 - Symbol
 
 - Non-Primitive Data Type 
- Object
 - Array
 - Function
 
 - Stand Alone Values 
- NaN
 - Undefined
 - Null
 
 - Type Conversion
 - Primitive & Non-Primitive Datatype
 
 - Primitive Data Type 
 -  
Operators
- Operator Precedence
 - Arithmetic Operators
 - Assignment Operators
 - Comparison Operators
 - Logical Operators
 - Bitwise Operators
 - Nullish Coalescing Operator
 - Optional Chaining Operator
 - Ternary Or Conditional Operator
 - Unary Operator
 inOperatornewOperatortypeofOperatorinstanceofOperator
 -  
Stack & Heap Memory
 -  
Function
- Function Expression
 - Anonymous Function
 
 
- Function Inside Function
 - Function Expression
 - Arrow Function
 - Function Hoisting
 - Function Lexical Scope
 - Function Scope Vs Block Scope
 - Default Parameter
 - Rest Parameter
 - Parameter Destructuring
 - Callback Function
 - Function Returning Function
 - Method
 - This Keyword
 - Window Object
 - Call
 - Apply
 - Bind
 
-  
Condition Statement
- If statement 
- Independent if statement
 - Nested if statement
 
 - Else Statement
 - Else If Statement
 - Nested If Else Statement
 - Switch Statement
 
 - If statement 
 -  
Loop
- For Loop
 - For In Loop
 - For Of Loop
 - While Loop
 - Do While Loop
 
 -  
Break & Continue
 -  
Break Keyword
 -  
Continue
 -  
Iteration
- String Iteration
 - Array Iteration
 - Object Iteration
 - Set Iteration
 - Map Iteration
 
 -  
String
- Escape Sequence
 - String Concatenation
 - String Template
 - String Conversion
 - String Index
 - String Method
 
 -  
Array
- Array Are Object
 - Array Operation
 - Array Destructure
 - Array Iterate
 - Array's method 
- map()
 
 
 -  
Objects
- Object Iteration
 - Object Computed Properties
 - Object Destructure
 - Object Cloning
 - Optional Chaining
 
 -  
Object Oriented Programming
- Object
 - Constructor Function
 newkeyword- What Is Oops?
 - Class
 - Constructor
 - Class Method
 - Factory Function
 - Inheritance
 - Encapsulation
 - Abstraction
 - Polymorphism
 
 -  
JavaScript Under the Hood
- Compiler
 - Interpreter
 - Compile Time
 - Runtime
 - JavaScript Engine
 - JavaScript Environment
 - Just in time compilation (JIT)
 - Call Stack
 
 -  
JavaScript Execution Context
- Context
 - Execution Context 
- Global Execution Context 
- Memory Creation Phase
 - Execution Phase
 
 - Function Execution Context
 
 - Global Execution Context 
 
 -  
Asynchronous JavaScript
- Asynchronous Operations
 - setTimeout & setInterval
 - Call back 
- Call back function
 - Call back hell
 
 - Async and Await
 - Promise 
- Executor Function
 
 - Fetch
 
 
How JavaScript execute Hoisting
- Literal Object
 - Constructor Function