This repository documents my journey of mastering JavaScript from fundamentals to advanced concepts, including JavaScript internals, asynchronous programming, DOM manipulation, and modern ES6 features.
The goal of this repository is to build a strong foundation in JavaScript and understand how JavaScript works internally inside the browser and runtime environment.
- JavaScript (ES6+)
- HTML5
- DOM APIs
- Browser Events
- VS Code
- Chrome DevTools
- Git
- GitHub
This repository focuses on understanding how JavaScript works internally, including:
- Execution Context
- Call Stack
- Event Loop
- Promises & Async Programming
- DOM Manipulation
- JavaScript Runtime Environment
- Introduction to JavaScript
- How JavaScript Works
- Variables
- Data Types
- Type Conversion & Coercion
- Operators
- Memory Management
- Numbers & Math
- Date APIs
- Conditional Statements
- Switch Case
- Ternary Operator
- Truthy & Falsy Values
- For Loop
- While Loop
- Do While Loop
- Break & Continue
- Advanced Loops (for...of, for...in)
-
Strings
-
Arrays
-
Array Methods
- forEach
- map
- filter
- reduce
- find
-
Objects
-
Object Destructuring
-
Optional Chaining
- Function Declaration
- Function Scope
- Hoisting
- Arrow Functions
- IIFE
- Higher Order Functions
- Call Stack
- Functions in Arrays
- Block Scope
- Functional Scope
- Lexical Scope
- JavaScript Execution Context
- Map
- WeakMap
- Set
- WeakSet
- try
- catch
- finally
- throw
- Rest Operator
- Spread Operator
- Destructuring
- Selecting Elements
- Updating Elements
- Adding Elements
- Removing Elements
- CSS Manipulation
- Event Listeners
- Event Object
- Event Target
- Event Phases
- Default Actions
- Event Delegation
- Writing Efficient Code
- Optimizing DOM Operations
- JavaScript Runtime Environment
- V8 Engine Architecture
- Browser Execution Model
- Synchronous vs Asynchronous Code
- Event Loop
- setTimeout
- setInterval
- Callback Functions
- Callback Hell
- Pyramid of Doom
- Promise Creation
- Promise Chaining
- Error Handling
- AJAX Basics
- Working with JSON
- XMLHttpRequest
- readyState
- responseType
- API Requests
- Async Functions
- Await Keyword
- Async Execution Flow
- Error Handling
- Fetch Requests
- Handling API Responses
- Prototype
- Prototype Chain
- new Keyword
- Constructor Functions
- ES6 Classes
- Object Creation
- call()
- bind()
- apply()
- Object Patterns
- Deep Manipulation
- Lexical Scope
- Closures
- Practical Use Cases
- Import
- Export
- Default Exports
- Multiple Exports
Features:
- Real-time clock
- Dynamic DOM updates
- setInterval usage
Features:
- Event listeners
- DOM manipulation
- CSS toggling
Features:
- Toggle sidebar
- Event-driven UI
Features:
- Form validation
- Event handling
- DOM updates
_03_JS
β
βββ 01_Introduction
βββ 02_Working
βββ 03_Variables
βββ 04_DataTypes
βββ 05_TypeConversion_&_Coercion
βββ 06_Operators
βββ 07_Memory
βββ 08_Number_&_Maths
βββ 09_Date
β
βββ 10_Conditional(control flow)
βββ 11_Loops
βββ 12_String
βββ 13_Arrays
βββ 14_Objects
βββ 15_Functions
βββ 16_Scope
βββ 17_JS_Execution_Context
β
βββ 18_Map_And_WeakMap
βββ 19_Set_And_WeakSet
βββ 20_Advance_Loops
βββ 21_Error_Handling
β
βββ 22_Rest_&_Spread_Operator
β
βββ 23_DOM
βββ 24_Events
β
βββ 25_Performance_of_Code
βββ 26_JS_RunTime_Envt_V8_Architecture
β
βββ 27_Synchronous_vs_Asynchronous
βββ 28_EventLoop
βββ 29_Callback_hell_or_pyramid_of_doom
βββ 30_Promise
βββ 31_Ajax
βββ 32_API-XHR
β
βββ 33_Execution_of_Synchronous_setTimeout_and_Promise_code
βββ 34_async_await
βββ 35_FetchAPI
β
βββ 36_Prototypal_and_new_Keyword
βββ 37_Class_and_Object
βββ 38_Call_Bind_Apply
βββ 39_Advance_Objects
βββ 40_LexicalScope_&_Closure
β
βββ 41_Import_Export
βββ 42_Projects
- VS Code
- Chrome DevTools
- Git
- GitHub
To master core JavaScript concepts, understand JavaScript internals, and build a strong foundation for modern frontend and full-stack development.
If you found this repository helpful, consider giving it a β on GitHub.