Asynchronous JavaScript

  1. Common Asynchronous Web APIs
    1. Timers
      1. setTimeout
        1. Scheduling Delayed Execution
          1. Minimum Delay Constraints
            1. Clearing with clearTimeout
              1. Return Value (Timer ID)
              2. setInterval
                1. Scheduling Repeated Execution
                  1. Interval Drift and Accuracy
                    1. Clearing with clearInterval
                      1. Return Value (Timer ID)
                      2. Differences Between setTimeout and setInterval
                        1. Execution Timing
                          1. Use Case Scenarios
                          2. requestAnimationFrame
                            1. Frame-Based Timing
                              1. Browser Optimization
                                1. Cancellation with cancelAnimationFrame
                              2. The Fetch API
                                1. Making Network Requests
                                  1. Fetch Syntax and Usage
                                    1. HTTP Methods Support
                                    2. The Request Object
                                      1. Creating and Configuring Requests
                                        1. Request Headers
                                          1. Request Body
                                            1. Request Options
                                              1. method
                                                1. headers
                                                  1. body
                                                    1. mode
                                                      1. credentials
                                                        1. cache
                                                      2. The Response Object
                                                        1. Reading Response Properties
                                                          1. status
                                                            1. statusText
                                                              1. ok
                                                                1. headers
                                                                  1. url
                                                                  2. Response Type Checking
                                                                  3. Handling Response Data
                                                                    1. Parsing JSON with json
                                                                      1. Reading Text with text
                                                                        1. Handling Other Data Types
                                                                          1. Blob
                                                                            1. ArrayBuffer
                                                                              1. FormData
                                                                            2. Handling Network Errors
                                                                              1. Detecting and Responding to Failures
                                                                                1. HTTP Error Handling
                                                                                  1. Network vs. HTTP Errors
                                                                                    1. Timeout Handling
                                                                                  2. Event Listeners
                                                                                    1. Asynchronous Nature of User Interaction Events
                                                                                      1. Event Loop and Event Handling
                                                                                        1. Non-Blocking Event Processing
                                                                                        2. DOM Event Handling
                                                                                          1. Adding Event Listeners
                                                                                            1. addEventListener Method
                                                                                              1. Event Handler Properties
                                                                                              2. Removing Event Listeners
                                                                                                1. removeEventListener Method
                                                                                                2. Event Propagation and Bubbling
                                                                                                  1. Capture Phase
                                                                                                    1. Target Phase
                                                                                                      1. Bubble Phase
                                                                                                    2. Custom Events and Asynchronous Triggers
                                                                                                      1. Creating Custom Events
                                                                                                        1. Dispatching Events
                                                                                                          1. Event-Driven Architecture