Skip to content

shikhilrane/JavaScript_Learning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

23 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ JavaScript Engineering Journey

JavaScript HTML DOM Async License

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.


πŸ“‘ Table of Contents


πŸ§‘β€πŸ’» Tech Stack

Language

  • JavaScript (ES6+)

Web

  • HTML5
  • DOM APIs
  • Browser Events

Tools

  • VS Code
  • Chrome DevTools
  • Git
  • GitHub

πŸ“Œ Learning Focus

This repository focuses on understanding how JavaScript works internally, including:

  • Execution Context
  • Call Stack
  • Event Loop
  • Promises & Async Programming
  • DOM Manipulation
  • JavaScript Runtime Environment

πŸ“š Course Modules

Module 1 – JavaScript Fundamentals

  • Introduction to JavaScript
  • How JavaScript Works
  • Variables
  • Data Types
  • Type Conversion & Coercion
  • Operators
  • Memory Management
  • Numbers & Math
  • Date APIs

Module 2 – Control Flow

  • Conditional Statements
  • Switch Case
  • Ternary Operator
  • Truthy & Falsy Values

Module 3 – Loops

  • For Loop
  • While Loop
  • Do While Loop
  • Break & Continue
  • Advanced Loops (for...of, for...in)

Module 4 – Core JavaScript Structures

  • Strings

  • Arrays

  • Array Methods

    • forEach
    • map
    • filter
    • reduce
    • find
  • Objects

  • Object Destructuring

  • Optional Chaining


Module 5 – Functions

  • Function Declaration
  • Function Scope
  • Hoisting
  • Arrow Functions
  • IIFE
  • Higher Order Functions
  • Call Stack
  • Functions in Arrays

Module 6 – Scope & Execution

  • Block Scope
  • Functional Scope
  • Lexical Scope
  • JavaScript Execution Context

Module 7 – Advanced Data Structures

  • Map
  • WeakMap
  • Set
  • WeakSet

Module 8 – Error Handling

  • try
  • catch
  • finally
  • throw

Module 9 – Modern JavaScript

  • Rest Operator
  • Spread Operator
  • Destructuring

Module 10 – DOM Manipulation

  • Selecting Elements
  • Updating Elements
  • Adding Elements
  • Removing Elements
  • CSS Manipulation

Module 11 – JavaScript Events

  • Event Listeners
  • Event Object
  • Event Target
  • Event Phases
  • Default Actions
  • Event Delegation

Module 12 – JavaScript Performance

  • Writing Efficient Code
  • Optimizing DOM Operations

Module 13 – JavaScript Runtime & Engine

  • JavaScript Runtime Environment
  • V8 Engine Architecture
  • Browser Execution Model

Module 14 – Asynchronous JavaScript

  • Synchronous vs Asynchronous Code
  • Event Loop
  • setTimeout
  • setInterval

Module 15 – Callback Patterns

  • Callback Functions
  • Callback Hell
  • Pyramid of Doom

Module 16 – Promises

  • Promise Creation
  • Promise Chaining
  • Error Handling

Module 17 – AJAX

  • AJAX Basics
  • Working with JSON

Module 18 – APIs using XHR

  • XMLHttpRequest
  • readyState
  • responseType
  • API Requests

Module 19 – Async / Await

  • Async Functions
  • Await Keyword
  • Async Execution Flow
  • Error Handling

Module 20 – Fetch API

  • Fetch Requests
  • Handling API Responses

Module 21 – Object Oriented JavaScript

  • Prototype
  • Prototype Chain
  • new Keyword
  • Constructor Functions

Module 22 – Classes & Objects

  • ES6 Classes
  • Object Creation

Module 23 – Function Context

  • call()
  • bind()
  • apply()

Module 24 – Advanced Objects

  • Object Patterns
  • Deep Manipulation

Module 25 – Closures

  • Lexical Scope
  • Closures
  • Practical Use Cases

Module 26 – ES Modules

  • Import
  • Export
  • Default Exports
  • Multiple Exports

🧠 Projects Built

Digital Clock

Features:

  • Real-time clock
  • Dynamic DOM updates
  • setInterval usage

Popup Modal

Features:

  • Event listeners
  • DOM manipulation
  • CSS toggling

Sidebar Navigation

Features:

  • Toggle sidebar
  • Event-driven UI

Registration Form

Features:

  • Form validation
  • Event handling
  • DOM updates

πŸ“‚ Repository Structure

_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

πŸ›  Tools Used

  • VS Code
  • Chrome DevTools
  • Git
  • GitHub

🎯 Goal

To master core JavaScript concepts, understand JavaScript internals, and build a strong foundation for modern frontend and full-stack development.


⭐ Support

If you found this repository helpful, consider giving it a ⭐ on GitHub.

About

Learning of JavaScript

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors