代码执行顺序
先来看同步代码
console.log(1);
console.log(2);
按代码执行顺序依次输出
1 2
再来看包含异步的代码
console.log(1); 第一条输出语句
setTimeout(()=>{
console.log(2); 第二条输出语句
},1000);
setTimeout(()=>{
console.log(3); 第三条输出语句
},0);
console.log(4); 第四条输出语句
输出结果如下
1 4 3 2
说明:1.第一条和第四条输出语句为同步代码。
2.第二条和第三条输出语句由于在setTimeout内部,属于异步代码。
3.代码执行顺序:先执行同步代码,碰到异步代码放到异步队列中先不执行。等同步代码都执行完,再执行异步代码。异步代码执行时不按其顺序输出,按运行时间,先执行完的先输出,后执行完的后输出。
获取返回值
同步
function sum(a, b){
return a + b;
}
let result = sum(10, 15);
console.log(result);
25
异步
function sum(a, b){
setTimeout(()=>{
return a + b;
},