JavaScript Full Syllabus

From Intro to Advanced + Projects

🟒 1. JavaScript Introduction
  • What is JavaScript?
  • Client-side vs Server-side JS
  • History & Evolution of JavaScript
  • ECMA & ECMAScript versions (ES5 to ES14)
  • JavaScript vs Java
  • How JS is executed (JS Engine: V8, SpiderMonkey)
🟒 Client-side vs Server-side JavaScript client and server
🟒 JavaScript vs Java js vs java
🟒 How JavaScript is Executed (JS Engine) js excutes
🟒 2. Basics & Syntax
  • Statements & Semicolons
  • Keywords and Identifiers
  • Comments (//, /* */)
  • Case Sensitivity
  • Whitespace
🟒 3. Variables & Data Types
  • var, let, const
  • Hoisting: var vs let vs const
  • Primitive Types: String, Number, Boolean, Null, Undefined, Symbol, BigInt
  • Non‑Primitive: Objects, Arrays, Functions
🟒 4. Operators
  • Arithmetic, Assignment, Comparison, Logical, Bitwise
  • Ternary Operator
  • Typeof Operator
  • Nullish Coalescing (??)
  • Optional Chaining (?.)
🟒 5. Type Conversion & Coercion
  • Implicit vs Explicit Conversion
  • parseInt(), parseFloat(), Number(), String()
  • Truthy & Falsy values
  • == vs ===
🟒 6. Control Flow & Conditions
  • if, else, else if
  • switch statement
  • break and continue
🟒 7. Loops
  • for, while, do-while loops
  • for...in, for...of
  • Loop control: break, continue, return
🟒 8. Functions
  • Declaration vs Expression
  • Anonymous Functions
  • Params & Return
  • Scope & Closures
  • IIFE
  • Arrow Functions
  • Rest & Default Params
  • Higher-order & Callback Functions
  • Recursion
🟑 9. Objects
  • Object Literals, dot vs bracket
  • Modify/Add/Delete Properties
  • this keyword
  • Nested Objects
  • Constructor Functions
  • Prototypes & Inheritance
  • Destructuring, Spread, Object methods
🟑 10. Arrays
  • Declare & Access Elements
  • push(), pop(), shift(), unshift()
  • slice(), splice(), concat(), join(), split()
  • indexOf(), includes(), find(), findIndex()
  • map(), filter(), reduce(), every(), some()
  • sort(), reverse(), flat(), Spread & Destructuring
🟑 11. Strings
  • Declaration & Escape Characters
  • length, charAt(), indexOf()
  • substring(), slice(), substr()
  • toUpperCase(), toLowerCase()
  • replace(), replaceAll()
  • split(), trim()
  • Template Literals
🟑 12. Scope & Execution Context
  • Global vs Local Scope
  • Function vs Block Scope
  • Lexical Scope & Hoisting
  • this keyword
  • Execution Context & Call Stack
🟑 13. Closures
  • What is a Closure?
  • Use Cases & Loops
  • Data Privacy
🟑 14. Error Handling
  • try, catch, finally
  • throw statement
  • Custom Errors
  • Error Object properties
🟑 15. Events
  • Event Listeners
  • Mouse, Keyboard, Form events
  • add/removeEventListener()
  • Event Object, Bubbling, Capturing, Delegation
  • preventDefault(), stopPropagation()
🟑 16. DOM Manipulation
  • What is DOM?
  • Selection: getElementById, className, querySelector(A)
  • Traversing, innerHTML/textContent
  • Attributes, create/remove elements
  • Styling via JS, DOM tree
πŸ”΅ 17. ES6+ Advanced Features
  • let vs const vs var
  • Arrow Functions
  • Template Literals
  • Destructuring, Spread & Rest
  • Default Params
  • Enhanced Object Literals
  • Optional Chaining, Nullish Coalescing
πŸ”΅ 18. Classes & Inheritance
  • Class Syntax
  • Constructors
  • Instance & Static Methods
  • extends & super()
  • Private fields, Getters/Setters
πŸ”΅ 19. Asynchronous JavaScript
  • Synchronous vs Async
  • Callbacks & Callback Hell
  • Promises (then/catch/finally)
  • async/await
  • Promise.all(), race(), any()
  • Error Handling in async
πŸ”΅ 20. JavaScript Modules
  • What is a Module?
  • ES6 import/export
  • Default vs Named Exports
  • Module Bundlers
πŸ”΅ 21. Working with JSON
  • What is JSON?
  • Syntax Rules
  • JSON.parse()
  • JSON.stringify()
πŸ”΅ 22. Local & Session Storage
  • localStorage vs sessionStorage
  • setItem(), getItem(), removeItem(), clear()
  • Storing objects via JSON
πŸ”΅ 23. Fetch API & AJAX
  • What is AJAX?
  • XMLHttpRequest
  • Fetch API + Promises
  • async/await
  • HTTP Methods & Status Codes
  • Headers & CORS
🟣 24. Date & Time
  • Creating Dates
  • getFullYear(), getMonth(), getDate()
  • Formatting Dates
  • Working with Time
🟣 25. Regular Expressions
  • Literals & Constructors
  • Patterns & Modifiers
  • Methods: test(), exec(), match(), replace()
  • Common Validation Examples
🟣 26. Memory Management
  • Memory Lifecycle & Garbage Collection
  • Avoid Memory Leaks
🟣 27. Best Practices & Clean Code
  • Naming Conventions
  • DRY, KISS, YAGNI
  • Comments & Documentation
🟣 28. Tools & Ecosystem
  • Linting: ESLint
  • Formatting: Prettier
  • Transpiling: Babel
  • Bundlers: Webpack, Parcel, Vite
  • npm, yarn
πŸ”₯ 29. Real-World Projects
  • To-Do List
  • Calculator
  • Weather App (API)
  • Expense Tracker
  • Quiz App
  • Form Validator
  • Note Keeper (localStorage)