制作一个调用'回调函数'
Making a function that calls a 'callback function'
我正在尝试创建一个具有参数callback
和value
的函数echo
,该函数调用以value
为参数的回调函数callback
。
有人能简要解释回调函数吗?它几乎是一个嵌套函数吗?
到目前为止,我有这个:
function echo(value, callback) {
return callback(value);
}
module.exports.echo = echo;
回调只是一个恰好包含"可调用"内容的变量。没有比这更神奇的了。
var myfunc = function() {
alert("I was called");
}
var foo = myfunc;
foo();
上面的代码段表明函数是数据,或者数据可以是可调用的函数。正如数据可以是字符串或可打印为字符串一样。
在JS和许多其他高级动态语言中,函数和其他数据之间的区别仅仅在于它可以被调用。它可以被分配、存储、成为成员、返回并作为参数传入。在较低级别的语言中,您正在存储一个指针,供PC跳转到(函数指针)。
另一种方式是将其视为占位符,用于当其他代码达到特定状态时可能调用的函数。我说可能是-其他代码可能无法达到该状态,因为它是有条件的-例如错误回调。
回调函数是在函数完成并希望将结果返回给另一个函数时使用的函数。
这在异步代码中经常使用:
通常情况下,您会调用一个函数,等待它完成,然后函数返回一个值,但对于异步进程,这将不起作用。所以你需要回拨。当异步函数被调用时,脚本将在后台执行,而主线程将继续。因此,您不能以正常方式返回值,因为同步函数会暂停主线程直到完成。异步函数完成后,将使用回调来处理结果。
相关文章:
- JavaScript回调函数
- 如何在回调函数中执行流
- 回调函数中传递参数的困难(Google Map API Markers)
- 如何正确地将参数传递给RequireJS回调函数
- 回调函数在python代码中离线
- 从AJAX回调函数中分离数据
- 赋值后的回调函数
- 如何在javascript回调函数中返回多个变量
- 函数表达式,返回回调函数
- 等待回调函数执行
- JavaScript回调函数和Google Feed API
- 如何从ajax成功回调函数中读取javascript变量
- 正在保存JavaScript内部回调函数中的值
- 有没有什么方法可以停止Jquery中的animate(也可以停止完整的回调函数)
- 如何在javascript中添加带有回调函数的按钮点击事件作为window.conf
- 在Golang回调函数中启用CORS
- 在初始函数完成之前调用回调函数
- jQuery Mobile:如何在$.Mobile.changePage之前运行回调函数
- 即使使用回调函数也无法返回值
- 为什么prototypjs观察到回调函数有绑定