100+ JavaScript

Loop In JS Function localStorage Drag Drop Object get set

Asynchronous JS

Callback Promises

Web API

Web API Intro Cookie Fetch API

JS PDF

Basic Pdf

Toast.js

Basic Toastr

📲Learn about Asynchronous JS Callback(Custom)📞

A callback is a function passed as an argument to another function, which is executed after the main function finishes it's job.

A callback is like a message you send to a friend saying,"Call me back when you're done with your work"
Basic callback function:
                            
    function greet(name, callback) {
        console.log("Hello, " + name + "!");
        callback();
    }
    
    // This is the callback function
    function sayGoodbye() {
        console.log("Goodbye!");
    }
    
    greet("Alice", sayGoodbye);                  
                            
                           
Here is another example.

Note:The setTimeout function in JS does not return a value from the function that it delays. Instead it returns a unique identifier.

                            
    function Sum(num1,num2,callback){
        setTimeout(()=>{
            let result=num1+num2;
            callback(result);
    
        },2000);
    }
    
    Sum(4,5,function(result){
        console.log(result);
    });
                            
                           
Here is another example.
                            
    function Task1(callback){
        setTimeout(()=>{
            console.log("completed task 1");
            callback();
    
        },2000)
    }
    
    function Task2(callback){
        setTimeout(()=>{
            console.log("completed task 2");
            callback();
        },1500);
    }
    
    function Task3(callback){
        setTimeout(()=>{
            console.log("completed task 3");
            callback();
        },3000);
    }
    
    function Task4(callback){
        setTimeout(()=>{
            console.log("completed task 4");
            callback();
        },2500);
        
    }
    
    
    //Here output is Asynchronus. without callback.
    /*
    Task1();
    Task2();
    Task3();
    Task4();
    */
    
    Task1(()=>{
        Task2(()=>{
            Task3(()=>{
                Task4(()=>{
                    console.log("All task is completed");
                });
            });
    
        });
    });                        
                            
                           

🌐Application🈸

Form Validation

    
    function formValidation(data,callback){
        let isvalid=callback(data);
        if(isvalid){
            console.log("Form is Valid");
        }
        else{
            console.log("Form is Invalid");
        }
    
    }
    
    
    formValidation({age:24},function(data){
        return data.age>=18;
    
    });
    
    formValidation("shanto@gmail.com",function(email){
        return email.includes("@");
    });
        
    
    

Database Query

    
    function fetchDataFromDatabase(query, callback) {
        // Simulate a database call
        setTimeout(() => {
            let data = { id: 1, name: 'Shanto Doe' }; // Example data
            callback(data);
        }, 1000);
    }
    
    // Custom callback to handle the data
    fetchDataFromDatabase('SELECT * FROM users', function(data) {
        console.log('User name:', data.name);
    });
    
    fetchDataFromDatabase('SELECT * FROM users', function(data) {
        console.log('User ID:', data.id);
    });