1. Course Introduction
1.1. Welcome to our Bootcamp
1.2. The story of this course?
1.3. How to set up the environments?
2.1. Introduction to Compiler and Engine
2.1.1. What are the compiler and interpreter
2.1.2. Interpreter versus Compiler
2.1.3. What is the JIT compiler and how does it work?
2.1.5. Types of JS engine
2.1.6. What’s the difference between compiling and polyfilling?
2.2. What is the thread of execution context?
2.2.1. Global execution context
2.2.2. Function or Local execution context
2.3. What is the thread of execution context?
2.3.1. Global Scope
2.3.2. Local Scope & Lexical Scope
2.4. What is hoisting?
2.6. What are the callback and higher-order functions?
2.8. What is call by value and call by reference?
2.9. What is IIFE?
2.10. What is the pure function?
2.13. What is an array? And its methods?
3. Introduction to DOM
3.1. What is the Window Object in DOM?
3.2. What is the Document Object in DOM?
3.3. Basic Selectors in DOM
3.4. Query Selectors in DOM
3.5. What is the difference between getElement and Query selectors?
3.6. How to traverse DOM elements?
3.7. How to create DOM elements?
3.8. How to insert the created elements?
3.9. How to update and remove the DOM element?
3.10. How to clone a node including its child elements?
3.11. What is the difference between event capturing and bubbling?
3.12. What are the events Delegation and Propagation?
3.13. Input elements and event handling
3.14. How to handle form data in DOM?
3.15. How to validate form data in DOM?
4. Client Storage
5.3. What is Ajax?
5.4. How to handle XMLHttpRequest?
5.5. How to send GET, POST, PATCH, PUT and DELETE requests and display data?
6.2. Error handling with if-else condition check
6.3. Error handling with try-catch-finally block
7.1. What is OOP?
7.2. How to think of everything as an Object?
7.3. What are object Properties and Methods?
7.4. What is Class in OOP?
7.5. Create a class using the factory pattern
7.6. Creating class using Constructor Pattern
7.7. What is the “New” Keyword and How does it work?
8. Introduce ES6 to ES10
8.1. What is ES6?
8.3. Let and Const
8.4. Template Literals
8.5. Object Literals
8.6. Assignment Destructuring
8.7. Spread Operator, Rest Parameters, and Default Parameters
8.8. Arrow Functions
8.9. find, fill
8.10. For…of, for…in,
8.13. Iterators and Generators
8.16. Maps and Sets
8.17. WeakMaps and WeakSets
8.25. String Padding
8.26. Exponential Operator
8.27. Trailing Comma
8.28. Object.keys(), Object.values() and Object.entries()
8.30. Array.flat() and Array.flatMap()
8.31. Global This
8.32. Optional chaining and Nullish Coalescing Operator
9. Introduction to TypeScript
9.1. Introduction to TypeScript
9.2. What is the thread of execution context?
9.2.1. Type Annotation
9.2.2. Type Inference
9.2.3. Number Type
9.2.4. String Type
9.2.5. Boolean Type
9.2.6. Object Type
9.2.7. Array Type
9.2.8. Tuple Type
9.2.9. Enum Type
9.2.10. Any Type
9.2.11. Never Type
9.2.12. Union Type
9.2.13. Type Aliases
9.3.2. Functions Type
9.3.3. Optional Parameters
9.3.4. Default Parameters
9.3.5. Rest Parameters
9.4. Advanced Types
9.5. Build a small admin template project using typescript