Home > Web Front-end > JS Tutorial > Return Await in JavaScript: Performance Hit or Style Issue?

Return Await in JavaScript: Performance Hit or Style Issue?

Patricia Arquette
Release: 2024-11-21 07:40:14
Original
794 people have browsed it

Return Await in JavaScript: Performance Hit or Style Issue?

Performance Implications of return await

ESLint's no-return-await rule prohibits the use of return await. The rule warns that return await introduces an unnecessary delay before a Promise resolves or rejects. However, the MDN async function documentation provides examples of return await without any caveat about performance concerns.

Performance Implications

Contrary to the ESLint rule's description, return await does not have significant performance implications. It may execute slightly slower than a plain return, but this difference is negligible in most scenarios.

Usability and Style

While return await is not a performance problem, it is considered poor style. It indicates potential misconceptions about promises and async/await. A plain return accomplishes the same functionality without the extra operation.

Exception Handling

However, there is one instance when return await makes a critical difference:

try {
  ...
  return await ...;
} ...
Copy after login

await triggers the Promise to resolve before executing catch or finally handlers. A plain return would bypass this behavior, leading to incorrect handling of rejected Promises.

The above is the detailed content of Return Await in JavaScript: Performance Hit or Style Issue?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template