If I were to restart Javascript again from scratch then I will follow this roadmap.
- What is JavaScript?
- Declaring JavaScript Variables: var, let, and const
- Basic math in JavaScript — Numbers and operators
- JavaScript syntax
- ES6 let VS const variables Var, Let, and Const - freeCodeCamp
- Arrays, Data Types, Strings Array W3Schools \ Array - MDN
- Conditionals & Looping code
- Object basics
- this
- Objects and Classes
- Functions & Scope
- Functions — Reusable blocks of code
- Function return values
- Arrow Functions
- Reference vs. Copy
- Inheritance in JavaScript
- Working with JSON data
- JavaScript Dates
- JavaScript Timers
- DOM & Events
- Asynchronous JavaScript From Callbacks to Promises, to Async/Await.
- JavaScript Event Loop
- UI Events
- Forms, controls
- Document and resource loading
- Functional Programming in JS
- Advanced Working With Functions
- Closures
- Regular Expressions
- Unicode in JS
- Object prototypes
- Storing data in the browser
- ES6 Modules
- Object building practice