在 JavaScript 中,我们可以使用 catch 方法来捕获 Promise 内的错误并拒绝 Promise。以下是一个包含代码示例的解决方法:
function someAsyncFunction() {
  return new Promise((resolve, reject) => {
    // 异步操作
    setTimeout(() => {
      const success = Math.random() < 0.5;
      if (success) {
        resolve("操作成功");
      } else {
        reject(new Error("操作失败"));
      }
    }, 1000);
  });
}
someAsyncFunction()
  .then((result) => {
    console.log(result);
  })
  .catch((error) => {
    console.error(error);
  });
在上面的代码中,someAsyncFunction 是一个返回 Promise 的异步函数。在异步操作完成后,如果成功,将调用 resolve 方法并传递成功的结果;如果失败,将调用 reject 方法并传递一个错误对象。
然后我们使用 .then() 方法来处理成功的结果,并使用 .catch() 方法捕获错误。如果在 Promise 内部发生错误,它将被传递到 .catch() 中,并执行相应的错误处理代码。
在上面的示例中,如果异步操作成功,将打印 "操作成功";如果失败,将打印错误信息。