如果是我们自己写的callback函数 如果想要使用异步event loop机制 是不是只能包在promise中使用

来源:8-5 event loop 的执行过程

慕前端6301706

2021-10-06

第一段代码 myCalculator中包含callback函数
function myDisplayer(some) {
console.log(some);
}

function myCalculator(num1, num2, myCallback) {
let sum = num1 + num2;
myCallback(sum);
}

console.log(1);
myCalculator(5, 5, myDisplayer);
console.log(2);

输出为1102
同步输出

第二段代码
function myCalculator(num1, num2) {
return new Promise((resolve, reject) => {
const sum = num1 + num2;
if(sum){
resolve(sum);
}else {
reject(new Error(‘has Error’))
}
})
}
console.log(1);
myCalculator(5, 5).then((sum) => console.log(sum));
console.log(2);

输出为1210
异步输出

如果想要异步输出除了把function包在promise中 是否还有别的办法

写回答

1回答

双越

2021-10-06

没懂你的意思。什么叫“自己写代码,要使用异步 event loop 机制?”

event loop 是异步的实现原理,一个模型,它无法被使用。你可以说“使用异步完成 xx 功能”。


【另】你提交问题时,代码一定要格式化一下,否则太不易读了。

0
2
双越
回复
慕前端6301706
可以用 promise ,也可以用 setTimeout ,这俩选择就够了。两者之间,推荐使用 promise 。
2021-10-06
共2条回复

一天时间高效准备前端技术一面 匹配大厂面试要求

针对时下面试高频考点,帮助新人js面试快速通关

4694 学习 · 1681 问题

查看课程