什么是回调函数
What are callback function?
我问一个朋友,问这段代码中的(data, function(i,e)
是什么,他说这是回调,然后我搜索互联网关于回调,不理解它。我读过这个什么是回调方法?什么是最简单的回调?
$.each(data, function(i,e){
console.log(e.id);
});
(data, function(i,e)
在这里有什么用?
$.ajax({
type: "GET",
url: pbxApi+"/confbridge_participants/conference_participants.json?cid="+circle,
dataType: "jsonp",
jsonpCallback: 'callback',
contentType: "application/javascript",
success: function(data) {
console.log(data);
}
});
回调函数是指定给现有函数/方法的函数,在操作完成、需要额外处理等情况下调用。
*这里有一些东西可以让你更好地理解回调:
Guy 1对Guy 2说:嘿,伙计,我想做点什么当用户点击那里的时候,当它发生的时候给我回电话,好吗?当用户点击此处时,Guy 2会回叫Guy 1 *一个被回调的方法。
谁叫它回你?
你的框架调用它。
为什么要回调呢?
因为你要求它被回调因为你想在发生某些事情时做一些处理
-
你正在做一些处理,不知道什么时候完成。您提供一个回调,然后继续执行其他一些工作。你的回调函数将被回调,告诉你处理已经完成,你现在可以在你的终端做一些事情了。
-
你想知道某个控件何时触发某个事件,以便你可以做一些处理。提供回调函数作为事件处理程序。
-
你对框架的默认处理不满意,想要覆盖这个处理,你提供一个回调,框架调用它来使用你自己的处理。
所以,一般来说:你要求组件/框架调用你提供的方法。你永远不会从你的代码中调用那个提供的方法,其他人会把它调用回来。
回调函数是作为参数传递给另一个函数的函数,该回调函数在另一个函数内部调用(或执行)。像这样
(data, function(i,e)
我们可以像传递变量一样传递函数,在函数中返回它们,并在其他函数中使用它们。当我们将回调函数作为参数传递给另一个函数时,我们只是传递了函数定义。
注意回调函数不会立即执行。它在包含函数体的某个指定点被"回调"。更多信息请参考
通常,JavaScript语句是逐行执行的。但是,对于效果,即使效果还没有完成,下一行代码也可以运行。这会产生错误。
为了避免这种情况,你可以创建一个回调函数。
回调函数在当前效果结束后执行。
例如,这是一个回调函数:
$("button").click(function(){
$("p").hide("slow", function(){
alert("The paragraph is now hidden");
});
});
在这种情况下,函数hide将在alert之前执行,这正是我们想要的。
另一方面,如果你不使用回调函数,这样写:
$("button").click(function(){
$("p").hide(1000);
alert("The paragraph is now hidden");
});
在这种情况下,alert将在函数hide执行之前执行。这是Javascript中回调函数的典型用法
- 如何将一个JavaScript函数回调为多个函数
- Meteor:异步函数回调异常:onAfterAction
- 从类方法中的 ajax post 函数回调函数更改 javascript 类属性
- jQuery动画函数回调错误
- jquery在html属性中添加函数回调,以便在其他事件中调用
- jquery getjson 函数:回调返回错误的字符串
- postMessage - 多个 postMessage 事件/函数/回调
- 在 Promise 调用的错误函数回调后附加对象的用法是什么
- 单击事件后的 JavaScript 函数回调
- 设置超时函数回调静态变量
- Jquery UI 模式匿名函数回调以打开对话框
- 函数回调、局部变量和 chrome.storage.sync.get
- Jquery Ajax 没有拾取选项参数中指定的函数回调
- 如何在 javascript 中进行函数回调
- 用函数回调封装JavaScript
- jQuery JavaScript嵌套异步函数回调
- Node.js-匿名函数回调
- 函数回调超出范围
- php代码的Javascript函数回调
- 如何使用函数回调在更改时提交表单