建设企业网站服务器,seo推广 课程,佳木斯城乡建设局网站,wordpress文章倒序1. 资讯速览
最近#xff0c;Promise 新出了一个方法#xff0c;已经进入 Stage 3 #xff08;候选阶段#xff09; #xff0c;相信很快就能达到 Stage 4 #xff08;完成阶段#xff09;#xff0c;并在项目中广泛使用。
这个方法就是 Promise.withResolvers。它是…1. 资讯速览
最近Promise 新出了一个方法已经进入 Stage 3 候选阶段 相信很快就能达到 Stage 4 完成阶段并在项目中广泛使用。
这个方法就是 Promise.withResolvers。它是一个静态方法返回一个包含新的 Promise 对象和两个函数的对象。
其中两个函数即resolve 和 reject。分别对应于传递给 Promise 构造函数执行器的两个参数。 Promise.withResolvers 的关键点在于现在解决和拒绝函数与 Promise 对象本身处于同一作用域而不是在执行器中创建并且只能使用一次。
这使得在某些更高级的用例中可能会更加方便例如在重复事件中重用解决和拒绝函数特别是在处理流和队列时。这也意味着嵌套层级较少而不是在执行器中包含大量逻辑。 2. 资讯详细
先举例对比说明该方法的妙用再补充一下注意点最后做小结。
2.1 举例说明
在没有 Promise.withResolvers 之前你可能实现了这样的代码
scriptlet num true;let resolve, reject;const promise new Promise((res, rej) {resolve res;reject rej;});num ? resolve(ok) : reject(not ok);
/script在使用 Promise.withResolvers 之后
scriptlet num true;const { promise, resolve, reject } Promise.withResolvers();num ? resolve(ok) : reject(not ok);
/script很明显的发现当我们单独使用 resolve 和 reject 时用上 Promise.withResolvers 不需要再定义一个额外的变量去存储。
2.2 注意点
该特性目前还在 Stage 3 阶段预计2024年正式发版。
目前主流浏览器还没有全部支持该特性谷歌需要 117以上的版本才能使用这个方法。
2.3 小结
Promise 新出了一个方法已经进入 Stage 3 候选阶段。
它的关键点在于现在解决和拒绝函数与 Promise 对象本身处于同一作用域而不是在执行器中创建并且只能使用一次。