These are my personal study notes, written while learning and working with JavaScript. They gather the core language ideas and browser APIs I want to understand, practise, and revisit in one place.
Each chapter explains a topic in beginner-friendly language, then builds it up with practical code examples and checks for understanding. Most language examples can be run in a browser console or in a modern JavaScript runtime. Browser chapters say when a page or browser API is needed.
Start with the first chapter and move through the core topics in order. Run the examples, change their inputs, and write a small variation before moving on. The final chapters collect the code samples and answer the review questions from the full set.
- Start with JavaScript - What JavaScript is, where it runs, and how to run a first script.
- Values, variables, and types - Declarations, primitive values, references, conversions, and scope basics.
- Operators and control flow - Expressions, comparisons, conditions, loops, and readable branching.
- Functions and closures - Function declarations, parameters, return values, callbacks, and lexical scope.
- Arrays and iteration - Creating, reading, transforming, and iterating over ordered data.
- Objects and properties - Object literals, property access, copying, destructuring, and safe updates.
- Prototypes and classes - Prototype delegation, class syntax, inheritance, and composition.
- Built-in collections - Map, Set, weak collections, and choosing the right data structure.
- Strings, numbers, dates, and regular expressions - Common built-ins for text, numeric work, dates, formatting, and pattern matching.
- Errors and debugging - Throwing and handling errors, validation, browser tools, and reliable diagnostics.
- The DOM and page updates - Finding elements, changing content, creating nodes, and keeping updates accessible.
- Events and forms - Event listeners, event flow, form data, validation, and user input.
- Asynchronous JavaScript - The event loop, promises, async functions, timers, and cancellation.
- JavaScript modules - ES module files, named and default exports, imports, and dynamic loading.
- HTTP requests with Fetch - Requests, JSON responses, status handling, cancellation, and practical error paths.
- Browser storage and safe patterns - Web storage, persistence limits, safe rendering, and browser security basics.
- All code samples - examples grouped by their source chapter.
- Complete questions and answers - review questions with clear answers.
This repository is a learning journal and practical reference for my JavaScript study. The examples are kept small enough to run and adapt, with browser-specific details separated from the core language where needed.
- Portfolio: https://www.ashishranjan.net
- GitHub: https://github.com/a2rp
- CodePen: https://codepen.io/ash1198
- LinkedIn: https://www.linkedin.com/in/aashishranjan
- Facebook: https://www.facebook.com/theash.ashish/
- YouTube: https://www.youtube.com/@ashishranjan-ashz?sub_confirmation=1
- Email: mailto:ash.ranjan09@gmail.com
- Support: https://a2rp-donation-page.netlify.app/
- Buy Me a Coffee: https://buymeacoffee.com/ashishranjan
- Patreon: https://www.patreon.com/ashishranjan