Javascript 可以使用单个参数创建 Promise 吗?

Can Javascript Promises be created with a single parameter?

当我们创建 Promise() 时,构造函数需要两个参数:resolvereject
我可以仅使用 resolve 创建 Promise 吗?

let promise = new Promise((resolve) => {});

我试过了,很有效。但是,这是一个好习惯吗?承诺在任何情况下都将得到解决。

是的,这是可行的。如果

  • 您确定 Promise 将始终解决,或者
  • 没有真正的方法来检测是否发生错误(在这种情况下,无论如何都不会使用 reject 参数)

那么只使用 resolve 参数是一种合理的可能性。

如果有可能出现错误 - 即使是意外错误 - 使用 reject 参数也是个好主意。很多错误毕竟不是意料之中的

是的,你可以

Promise.resolve(value);

参考https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/resolve