- Introduction to Javascript
- Variables, data types and operators
- Control structures (if/else, switch statements, loops)
- Functions and scope
- Arrays and objects
- ES6 features (let and const, arrow functions, template literals)
- Understanding functions
- function declaration vs function expression
- Passing arguments to functions
- Default parameters
- Higher-order functions
- Arrow functions
- IIFE (Immediately Invoke Function Expression)
- Closures and their importance
- Creating objects
- Prototypal inheritance vs classical inheritance
- Classes and their syntax
- Object desctructing
- Object spread operator
- Object clone and copy
- Introduction to modules
- Exporting and importing modules
- Importing third-party modules
- Organizing modules
- View - basic building block of UI
- Component - reusable piece of code that represents a UI element
- Props - short for "properties" and are used to pass data
- Style - a set of properties that define the appearance of a UI
- Layout and Flexbox - process of positioning UI elements on the screen
- Container - view that is used to hold other views or components
- Recap
- Introduction to asynchronous Javascript
- Callback functions
- Promises
- Handling promises rejection and chaining
- Async/await and its benefits
- Using the fetch API for asynchronous data fetching