A repository to document my journey of learning JavaScript. This includes notes, code snippets, exercises, and small projects.
Before you begin, ensure you have the following installed:
- A modern web browser (e.g., Chrome, Firefox, Edge).
- Node.js (LTS version is recommended).
- A code editor of your choice, like Visual Studio Code.
If you plan to use external libraries, you can initialize a package.json file:
npm init -yThis repository can be organized to keep learning materials structured. You can adapt this structure as you see fit.
/01-basics: Core concepts, data types, operators, control flow./02-functions: In-depth look at functions, scope, and closures./03-dom-manipulation: Examples of interacting with the Document Object Model./04-async-js: Promises, async/await, and handling asynchronous operations./projects: Small, hands-on projects to apply learned concepts./notes: Personal notes and summaries on various topics.
Most of the code can be run in one of two ways:
-
In the Browser: Open the corresponding
.htmlfile in your web browser and open the developer console (usually withF12orCtrl+Shift+I) to see the output. -
Using Node.js: Run standalone
.jsfiles from your terminal:node path/to/your/file.js
This is a checklist of topics I plan to cover:
- JavaScript Fundamentals (Variables, Data Types, Operators)
- Control Flow (If/Else, Loops, Switch)
- Functions & Scope
- Arrays & Objects
- DOM Manipulation & Events
- Asynchronous JavaScript (Callbacks, Promises, Async/Await)
- ES6+ Features (Arrow Functions, Destructuring, etc.)
- MDN Web Docs for JavaScript: The ultimate reference.
- JavaScript.info: A modern JavaScript tutorial.
- freeCodeCamp: Interactive learning and projects.