setTimeout 多层回调函数嵌套的疑惑
本人新手, 在学习javascript
的异步时遇到了点疑虑, 如下:
在看阮一峰老师的教程里面有这样一段实例代码:
var async = function(arg, callback) {
console.log(`参数为${arg}, 一秒后返回结果`)
setTimeout(function() {
callback(arg * 2)
}, 1000)
}
async(1, function(value){
async(value, function(value){
async(value, function(value){
console.log('完成: ', value)
})
})
})
输出结果如下:
不是特别理解整个多层回调的运行机制, 貌似传进去的参数在每次执行setTimeout
的时候都会被'记住', 但是该怎么理解这段代码, 总是感觉特别绕.
希望能有前辈能帮忙解答, 谢谢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
就是个回调的过程