30秒学会 JavaScript 片段 · 2023年8月30日

30秒学会 JavaScript 片段 – What is a callback function?

A callback function is a function passed as an argument to another function, which is then invoked inside the outer function. Callback functions are often executed once an event has occurred or a task has completed.

Synchronous callbacks

A synchronous callback is a callback function that is executed immediately. The function passed as the first argument to Array.prototype.map() is a great example of a synchronous callback:

代码实现

const nums = [1, 2, 3];
const printDoublePlusOne = n => console.log(2 * n + 1);

nums.map(printDoublePlusOne); // LOGS: 3, 5, 7

Asynchronous callbacks

An asynchronous callback is a callback function that is used to execute code after an asynchronous operation has completed. The function executed inside Promise.prototype.then() is a great example of an asynchronous callback:

使用样例

const nums = fetch('https://api.nums.org'); // Suppose the response is [1, 2, 3]
const printDoublePlusOne = n => console.log(2 * n + 1);

nums.then(printDoublePlusOne); // LOGS: 3, 5, 7

翻译自:https://www.30secondsofcode.org/js/s/callbacks