Javascript “与”之间有区别吗;return wait getUsers()&引用;VS";const users=wait getUsers()&&;返回用户&引用;
以代码为例:Javascript “与”之间有区别吗;return wait getUsers()&引用;VS";const users=wait getUsers()&&;返回用户&引用;,javascript,node.js,asynchronous,async-await,Javascript,Node.js,Asynchronous,Async Await,以代码为例: const getUsers = async () => { // get users from DB // and return } 两者之间有区别吗 const someOtherFunction = () => { // do some stuff... const users = await getUsers(); return users; } 及 eslint有一个,其中描述了原因: 在异步函数
const getUsers = async () => {
// get users from DB
// and return
}
两者之间有区别吗
const someOtherFunction = () => {
// do some stuff...
const users = await getUsers();
return users;
}
及
eslint有一个,其中描述了原因:
在异步函数中使用return await将当前函数保留在调用堆栈中,直到正在等待的承诺被解析为止,代价是在解析外部承诺之前执行额外的微任务。return-await还可以在try/catch语句中用于捕获来自另一个返回承诺的函数的错误
您可以通过不等待返回值来避免额外的微任务,如果从返回的承诺异步抛出错误,则函数的折衷不再是堆栈跟踪的一部分。这会使调试更加困难
没有(除非您在分配给
用户
和返回它之间做额外的事情)。较长的代码更难理解,因为有多余的临时变量。return await
通常没有任何用处,其中return getUsers()的选项在哪里代码>?和
const someOtherFunction = async () => {
// do some stuff...
return await getUsers();
}