回调JS代码
Call back JS code
在其他语言中,我习惯了指令按顺序执行,比如1,2,3。JS不是这样工作的。我需要非常简单的JS代码,以确保指令执行1,2,3,而不是2,1,3一次和3,1,2下一次。
在其他语言中,我习惯了指令按顺序执行,比如1,2,3。JS不是这样工作的。
实际上,JavaScript以的方式工作
听起来像你正在调用一个带回调的函数来异步地做一些事情。让我们来试一个例子。
console.log('1');
doSomethingLater(function callback () {
// This is my callback code
console.log('3');
});
console.log('2');
输出为1,2,3。
调用doSomethingLater
时,您正在做的是将引用传递给匿名函数作为参数。doSomethingLater
将不会调用该函数,直到它被编程这样做,这通常是一段时间后。
如果忽略回调,很容易看出事情是按顺序执行的。
console.log('1');
doSomethingLater();
console.log('2');
这三条语句按顺序执行。
为了进一步说明这一点,考虑一个setTimeout()
的例子,我们只在一秒钟后执行其他代码。(如果你不熟悉setTimeout()
,先去查一下,然后再回到这里继续阅读。)
console.log('1');
setTimeout(function () {
console.log('3');
}, 1000);
console.log('2');
在这个例子中,直到setTimeout()
被调用一秒钟之后,我们才尝试执行回调,所以基本上是在console.log('2')
之后一秒钟;
JavaScript 按顺序执行
function doSomething(x) {
console.log('did something', x);
}
console.log(1);
console.log(2);
console.log(3);
doSomething(1);
doSomething(2);
doSomething(3);
相关文章:
- Meteor JS中代码的重复使用部分
- 骨干模型默认值-todos.js示例中不必要的代码
- 为什么indexOf在这个js代码中不起作用
- 点击facebook像素跟踪注册(JS/JQUERY代码)
- js代码从jQuery转换为原生代码
- JS代码中的减号
- 将JS函数传递给Emscripten生成的代码
- 谷歌地图Api和JS代码不工作
- HTML 5 和 3.js 代码不会在网页上显示任何内容
- Node.js:异步代码 + js 闭包的问题
- Chrome 开发者工具 - 控制台.log原生代码 JS
- 为jQuery和KNOCKOUT通用化javascript代码.js成为一个可重用的模块
- .ninnerHtml代码(JS/JQuery)无法识别html表中的动态内容
- 生成唯一的6位代码js
- 我得到了“;赋值中的左侧无效“;在我的代码(JS)中
- 更改代码(JS)中JQuery Mobile Calendar日期的状态
- 如何改进代码JS(Jquery)?一个简单的下拉列表
- 从传输中了解代码.js
- 这段代码(JS)的区别是什么?
- JavaScript倒计时计时器代码[JS]