JavaScript From Scratch
Tags: javascript, webdev, node, frontend
Published: 2023-03-26 11:44:12

## Session1
1. What is JS?
2. What Can we do with JS?
3. Compiler in JS?
4. What is NodeJS?
5. What is console.log();?
6. JS Setup?
7. Add JS in HTML?
8. Variables? 
       1.let 
       2.var  
       3.const
9. Variable naming convention
10. Data Type 
         1.Primitive Type 
         2. Reffrencetype
11. Operators
       1.Airthmatic
       2.Comparision
       3.Equality
       4.Ternary Operator
       5.Logical operator
       6.With no booleans
       7.Bitwise Operator
       8.operator Precedance
12. Control Statements 
    1. if 
    2. else-if
    3. else
    4. switch, break, continue
13. Loops
    1. for-loop
    2. while-loop
    3. Do-while-loop
    4. what is inifinite loop?
    5. for-in-loop
    6. for-of-loop

---

## Session2
1. What is Object in JS? 
   //Object Creation //Object access //properties //methods
2. Object Creation
   1. Factory Function
   2. Constructor Function //new keyword
3. Dynamic Nature of Objects //add and //remove Properties in 
   object
4. Function are objects proof?
5. Create Object for Primitive and Reference Type data type and 
   their storage
6. Iterating through Objects
   1. for-in-loop
   2. for-of-loop
7. Object Clonning.
8. Garbage Collection.

---

## Session3
1. Built in Objects
  1. Math
  2. String
  3. Date
2.Template Litrals //backtick //escape sequences
3. Arrays
    1. Creation 
    2. Access 
    3. Insertion 
    4. Searching 
    5. Callback Function 
    6. Arrow Function
    7. Removing Element   
    8. Emptying an array
    9. Combine and slicing Array //concat() //Slice(startIndex, 
        endIndex);
   10. Spread operator (...)
   11. Iterating Array //For-Each loop
   12. Joining Array  join();
   13. split Array split()
   14. Sorting sort()
   15. Reverse array reverse();
   16. Filtering filter()
   17. Mappping Array map()
   18. Mapping with Object 
  

---

## Session4
1. What is Function?
2. syntax for function in JS? //Function Declaration 
3. Why need function??
4. How to call or invoke function?
5. Hoisting concept
6. Function assignment
7. function declaration VS Function Assignment
8. Named function VS Annoyms Function
9. Dynamic nature of function?
10. special object Argument
11. REst parameter in function?
12. Default Parameter in function
13. Getter and setters in function
14. Try and Catch block Error Handling
15.  Scope in function.

---

## ModernJS Session1

1. window object
2. What is Dom ?
3. What is BOM ?
4. DOM tree of objects?
5. DOM ObjectMethods
    1. .getElementById()
    2. .getElementsByClassName()
    3. .getElementsByTagName()
    4. .querySelector()
    5. .querySelectorAll()
    6. .innerHTML
    7. .outerHTML
    8. .textContent
    9. .innerText
   10. .createElement()
   11. .appendChild()
   12. .insertAdjacentHTML()
   13. .removeChild()
   14. child.parent(childElement)

6.CSS Modify by JS
  1. .style
  2. .cssText
  3.  .setAttribute()
  4.  .className
  5.  .classList
 

---
## Session2

1. Browser Events
   1. what is event?
   2. Respond to event
   3. Data stored in event
   4. Stop event
   5. Life Cycle of event
   . monitorEvent() method
   . unmonitorEvent() merhod

2. EventListner
   1. addEventListener() method
   2. Type coercion
   3. removeEventListener() method
   4. Phases of an event 
         1. Capturing Phase
         2. Target Phase
         3. Bubbling Phase

   5. event Object
3. Default action .perentDefault()
4. Avoid too many events .nodeName and event.target
5. Document loaded event.

---

## Session 3

1. Performance //performance.now() method
2. Reflow and Repaint Concept
3. Document Fragments
4. Call Stack
   1. Single threading 
   2. Synchronus language
5. Event Loop
6. Async Code
7. setTimeOut

---

## Session 4 
1. Asynchronous JS
2. API
3. Features of Async Code
4. Promises
5. promise chaning
6. Async-Await
7. Fetch API //get //post  //read //create
8. Closures
9. classes and export modules in JS