Javascript:如何确定是否承诺函数?
考虑小助手函数,其中一些函数显然是async/promise的候选函数(我认为我理解它们): 而这:Javascript:如何确定是否承诺函数?,javascript,asynchronous,promise,Javascript,Asynchronous,Promise,考虑小助手函数,其中一些函数显然是async/promise的候选函数(我认为我理解它们): 而这: exports.function addOne(number){ return new Promise(resolve => { resolve(number + 1); }); } 似乎有点过分了 确定他们是否应该承诺其函数的规则是什么?如果我需要按特定顺序执行多个异步函数,我通常使用承诺。例如,如果我需要发出三个请求并等待它们全部返回,然后才能组合数据并处理它们,这是
exports.function addOne(number){
return new Promise(resolve => {
resolve(number + 1);
});
}
似乎有点过分了
确定他们是否应该承诺其函数的规则是什么?如果我需要按特定顺序执行多个异步函数,我通常使用承诺。例如,如果我需要发出三个请求并等待它们全部返回,然后才能组合数据并处理它们,这是承诺的一个很好的用例。在您的情况下,假设您有一个文件,并且您需要等待来自服务的文件和元数据都被加载,您可以将它们放在一个承诺中 如果您希望优化长时间运行的流程上的操作,我会更多地关注web workers,而不是使用承诺。它们在UI线程之外操作,并使用消息将其进度传递回UI线程。它是基于事件的,但不需要承诺。唯一需要注意的是,您不能在web worker中对DOM执行操作 更多关于网络工作者的信息,请点击此处: 决定他们是否应该履行职责的规则是什么 其实很简单:
- 当函数执行异步操作时,它应该返回对结果的承诺
- 当函数只执行同步操作时,它不应返回承诺
exports.function addOne(number){
return new Promise(resolve => {
resolve(number + 1);
});
}