【发布时间】:2021-04-01 14:46:01
【问题描述】:
所有这 3 个语句都返回 Promise<T> 而不是 Promise<Promise<T>>
// first
const foo = Promise.resolve(Promise.resolve(42))
// second
function bar() {
return new Promise((resolve, reject) => {
resolve(new Promise((resolve, reject) => {
resolve(42)
}));
})
}
// third
function baz() {
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve(new Promise((resolve, reject) => {
setTimeout(() => {
resolve(42)
}, 1000)
}))
}, 1000)
})
}
foo.then(console.log) // 42
bar().then(console.log) // 42
baz().then(console.log) // 42
是否可以在 JavaScript 中创建一个 Promise 来解析另一个 Promise?
【问题讨论】:
-
这个的用例是什么?
标签: javascript typescript promise