Skip to content

Ayush4958/JavaScript_Journey

Repository files navigation

📘 JavaScript Journey – From Fundamentals to Advanced Concepts

Welcome to my JavaScript Journey repository – a structured, hands-on log of my progress through core and advanced JavaScript topics. I'm learning directly from the Mozilla Developer Network (MDN) and documenting my knowledge with real examples and personal notes.

This repository contains focused lecture files, not full projects — so you can learn each concept clearly and efficiently without the clutter.


🔍 Topics Covered

🔁 Lecture 1 – Loop Iteration

Mastering different loop structures:

  • for, while, and do...while loops
  • for...in and for...of
  • break & continue for control flow

🔧 Lecture 2 – Functions & Arrow Functions

Understanding JavaScript's flexible function system:

  • Traditional vs. arrow functions
  • Nested functions
  • Practical examples: Fibonacci & Factorial
  • Bonus: Bitwise & ternary operators

📅 Lecture 3 – String, Number, Date, and RegEx

Key built-in JavaScript objects:

  • Common String & Number methods
  • Real-time clock using Date
  • Intro to Regular Expressions (with regexr.com)

🧮 Lecture 4 – Indexed Collections (Arrays & Objects)

Handling structured data:

  • Arrays, objects, and maps
  • Sparse arrays
  • forEach, multidimensional arrays
  • Built-in array methods

🗝️ Lecture 5 – Keyed Collections

Understanding modern JS collections:

  • Map vs Object
  • Set vs Array
  • WeakMap and WeakSet
  • Using .set() and .get()
  • Deleting elements

🏗️ Lecture 6 – Classes in JavaScript

Object-oriented programming fundamentals:

  • Defining classes & constructors
  • Instance methods
  • extends & inheritance
  • Using get & set

⏳ Lecture 7 – Promises & Async Flow

Async programming with Promises:

  • Promise syntax and structure
  • .then, .catch, .finally
  • Promise.all, Promise.any, Promise.race, Promise.allSettled

⚙️ Lecture 8 – Generator Functions

Controlling iteration manually:

  • Custom iterators
  • function* and yield
  • next() method with { value, done }

🧬 Lecture 9 – Prototypes & Inheritance

Deep dive into JavaScript inheritance:

  • Shadowing built-in prototypes
  • Chaining and setting prototypes
  • Inheritance using class
  • Practice from MDN docs

⚡ Lecture 10 – Asynchronous Functions

Understanding async behavior:

  • Why sync code can block UI
  • Async solutions using setTimeout, addEventListener, fetch
  • async/await for clean async logic

🎨 Canvas in JavaScript

Interactive graphics & animation:

  • Drawing shapes
  • Animating with JS loops
  • Collision detection & interaction
  • Adding images to canvas
  • Handling canvas events

🧠 Learning Approach

  • Learning from MDN docs + experimentation
  • Focused lecture files (Lecture1.js, Lecture2.js, etc.)
  • No heavy project scaffolding — just clean JS!

🛣️ What's Next?

➡️ Starting React JourneyCheck out my new React repository here 🎉


🙌 Contribution & Feedback

This repo is a personal log but feel free to explore, fork, or open an issue if you'd like to contribute.


Happy Hacking! 👨‍💻💡

“Consistency beats intensity. 1% every day adds up.”

About

JS from beginner to advance level

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published