load()函数如何允许用户提供回调?

nev*_*ame 7 javascript

在javascript中,对于库/框架来说非常流行,让我们为数据的后处理定义一个回调函数.

例如.

load("5", function(element) {
    alert(element.name);
});
Run Code Online (Sandbox Code Playgroud)

我想知道load()函数是如何让用户提供回调的?

有没有很好的教程?

CMS*_*CMS 13

好吧,该load功能可能如下所示:

function load(arg, callback) {

  var element = { name: "foo " + arg }; // something to pass

  if (typeof callback == 'function') {
    callback(element);
  }
}
Run Code Online (Sandbox Code Playgroud)

通过typeof检查,我们确保回调参数是一个我们可以调用的对象,一个函数.

然后你的例子:

load("5", function(element) {
    alert(element.name); // Will show `"foo 5"`.
});
Run Code Online (Sandbox Code Playgroud)