javascript callback function example

Example 1: javascript callback

/*
A callback function is a function passed into another function
as an argument, which is then invoked inside the outer function
to complete some kind of routine or action. 
*/
function greeting(name) {
  alert('Hello ' + name);
}

function processUserInput(callback) {
  var name = prompt('Please enter your name.');
  callback(name);
}

processUserInput(greeting);
// The above example is a synchronous callback, as it is executed immediately.

Example 2: callback function js

function greeting(name) {
  alert('Hello ' + name);
}

function processUserInput(callback) {
  var name = prompt('Please enter your name.');
  callback(name);
}

processUserInput(greeting);

Example 3: what are callback functions

// A function which accepts another function as an argument
// (and will automatically invoke that function when it completes - note that there is no explicit call to callbackFunction)
funct printANumber(int number, funct callbackFunction) {
    printout("The number you provided is: " + number);
}

// a function which we will use in a driver function as a callback function
funct printFinishMessage() {
    printout("I have finished printing numbers.");
}

// Driver method
funct event() {
   printANumber(6, printFinishMessage);
}

Example 4: javascript callback

// Create a callback in the probs, in this case we call it 'callback'
function newCallback(callback) {
  callback('This can be any value you want to return')
}

// Do something with callback (in this case, we console log it)
function actionAferCallback (callbackData) {
  console.log(callbackData)
}

// Function that asks for a callback from the newCallback function, then parses the value to actionAferCallback
function requestCallback() {
  newCallback(actionAferCallback)
}

Example 5: javascript pass function as parameter

//passing a function as param and calling that function
function goToWork(myCallBackFunction) {
    //do some work here
    myCallBackFunction();
}

function refreshPage() {
    alert("I should be refreshing the page");
}

goToWork(refreshPage);

Example 6: what are callbacks

/*
tl;dr: Callbacks are a way to force one function to complete,
before running another. Used for asynchronus programming.
*/

// Consider this example:
  
names = ['Anthony', 'Betty', 'Camie']

function addName(name, callback){
	setTimeout(function(){
    	names.append(name)
      	callback()
    }, 200)
}

function getNames(){
	setTimeout(function(){
    	console.log(names)
    }, 100)
}

addName('Daniel', getNames)
/* 
addName('Daniel', getNames) is saying:
'finish the function addName() BEFORE running the function getNames()'

> 'getNames()' here is the callback

Without the call back in this example, getNames would finish 
before addName. (setTimeout is used to force one function to go slower)

Callbacks are given as arguments to other functions

*/