函数篇:Callback----回调函数

Callback 是什么?

通常是一个由调用者(以参数形式)传递给被调用者的,由被调用者调用的函数。
但是也有例外:比如,xhr.onsuccess = fn; 这里既没有明显的被调用者,也不是通过参数传递的。
所以可以这样描述:回调函数就是一个“你自己不主动调用,而是交给别人调用的函数”。

Callback 很常见

$button.on('click', function(){})

click 后面的 function 就是一个回调,因为「我」没有调用过这个函数,是 jQuery 在用户点击 button 时调用的。

div.addEventListener('click', function(){})

click 后面的 function 也是一个回调,因为「我」没有调用过这个函数,是浏览器在用户点击 button 时调用的。

一般来说,只要参数是一个函数,那么这个函数就是回调。

Callback 有点反直觉

很多初学者不明白 callback 的用法,因为 callback 有一点「反直觉」。

比如说我们用代码做一件事情,分为两步:step1( ) 和 step2( )。

符合人类直觉的代码是:

step1()
step2()

callback 的写法却是这样的:

step1(step2)
原文地址:https://www.cnblogs.com/elexmiumiu/p/12191395.html