关键词: Promise.prototype.then(), Promise.resolve()
resolve(value)
返回一个指定解析值为value的Promise对象.
其中, value可以是: ①普通值或对象; ②Promise对象; ③thenable对象(含then方法的对象).
传入这三种value后, 都会被包裹为Promise对象, 结果分别是: ①解析值为普通值或对象; ②解析值为传入的Promise对象本身; ③thenable转为的Promise对象.
Promise.prototype.then(res)分别接受到这的参数res, 分别是这三种包裹为的Promise对象的解析值.
var p = Promise.resolve(1234)
console.log(p instanceof Promise) // true
var p = Promise.resolve((resolve, reject) {
resolve('hello')
})
console.log(p instanceof Promise) // true
var p = Promise.resolve({
name: 'Bob',
age: 100,
then(resolve, reject) {
resolve('hellll')
}
})
console.log(p instanceof Promise) // true
Promise.resolve(value)
其作用与resolve效果一样. 只是resolve需要写在下面代码中:
new Promsie((resolve, reject) => {
resolve(value)
})
Promise.resolve(value)则不用那么麻烦.