A callback is a function that is passed as an argument to other function. This other function is expected to call this callback function in its definition. The point at which other function calls our callback function depends on the requirement and nature of other function.
Callback Functions are generally used with asynchronous functions.
Callbacks make sure that a function is not going to run before a task is completed but will run right after the task has completed.