我有一段简单的JavaScript代码,可以执行API请求并返回响应。然而,在这种情况下,我将会有成千上万个请求。那么,在这两种代码选项中,哪一个的性能更好,为什么?同时,哪一个是现在推荐的良好实践?
第一种选择是使用.then来解析promises,第二种选择是使用async/await。
在我的测试中,这两个选项的结果非常相似,没有显着的差异,但我不确定在规模上会怎样。
// Using then
doSomething(payload) {
const url = 'https://link-here/consultas';
return this.axios.get(url, {
params: {
token: payload.token,
chave: payload.chave,
},
}).then(resp => resp.data);
}
// Using Async / await
async doSomething(payload) {
const url = 'https://link-here/consultas';
const resp = await this.axios.get(url, {
params: {
token: payload.token,
chave: payload.chave,
},
});
return resp.data;
}
任何解释都会非常有价值。
Promise.all
合并它们的响应,则可以获得真正的收益。然后启动下一批,依此类推... - trincotasync
函数和await
,而非手写的Promise代码”。 - vsemozhebutytry/catch
包装await
没有必要。原帖作者只是想要返回被拒绝的 promise,而async
函数会自动捕获拒绝并执行此操作。在比这更复杂的错误处理情况下需要并且有用的是try/catch
。 - jfriend00