uncaught(in promise)什么错误下会出现
时间: 2023-06-25 10:04:22 浏览: 171
在 JavaScript 中,`uncaught(in promise)` 错误通常出现在 Promise 中没有捕获异常的情况下。当 Promise 中抛出异常时,如果没有使用 `.catch()` 或 `try-catch` 包裹 Promise,则会出现 `uncaught(in promise)` 错误。
例如,以下代码中,Promise 在执行时会抛出异常,但是没有使用 `.catch()` 或 `try-catch` 捕获异常:
```javascript
Promise.resolve().then(() => {
throw new Error('Something went wrong!');
});
```
在这种情况下,控制台将输出 `uncaught(in promise) Error: Something went wrong!`。
要避免这种错误,我们可以使用 `.catch()` 捕获 Promise 中的异常,例如:
```javascript
Promise.resolve().then(() => {
throw new Error('Something went wrong!');
}).catch((error) => {
console.error(error);
});
```
或者使用 `try-catch` 包裹 Promise:
```javascript
try {
await Promise.resolve().then(() => {
throw new Error('Something went wrong!');
});
} catch (error) {
console.error(error);
}
```
阅读全文