js resolve的用法
solve 方法是 Promise 全局性方法,它会将参数转为 Promise 对象:
resolve to do sth solve([1,2,3]).then(data=>{
console.log(data);
});
// [1,2,3]
solve()传入参数有几种类型
1、Promise 实例
solve(new Promise(resolve=>{
setTimeout(()=>{
resolve(100);
},1000)
})).then(data=>{
console.log(data);
});
// 100
2、thenable对象
//thenable对象是实现了then方法的对象(比如数组类的对象,定义了then方法),通过solve()就可以将thenable对象转为promise对象
4、不带参数
总结:
solve() 是 Promises/A+ 规范中定义的方法,该方法用于将非 Promise 对象转
换成 Promise 对象,一般情况下,可以传入 Promise 实例,thenable 对象,普通对象,值类型等参数,其中 Promise 实例和 thenable 对象会被转换成 Promise 实例,普通对象和值类型则会被封装成一个新的 Promise 实例,如果不传参数,则 resolve 会返回一个状态为 resolved 的 Promise 实例,也就是说会返回一个没有意义的 Promise 实例,另外 resolve 也可以接收 ject 传来的失败状态,并将其转换成成功状态。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论