类: Deferred<T>
更新: 2025/7/20 字数: 0 字 时长: 0 分钟
lang.Deferred
Deferred类,用于创建Promise的延迟对象,而无需使用new Promise
。通过resolve或reject函数可以设置Promise的状态。
示例
js
"nodejs";
const { Deferred } = require('lang');
async function main() {
console.log(await add(1, 2));
}
main();
function add(a, b) {
const d = new Deferred();
setTimeout(() => {
d.resolve(a + b);
}, 1000);
return d.promise();
}
类型参数
名称 |
---|
T |
目录
Constructors
Accessors
方法
Constructors
constructor
- new Deferred<
T
>(keepRunning?
)
类型参数
名称 |
---|
T |
参数
名称 | 类型 | Default value |
---|---|---|
keepRunning | boolean | true |
Accessors
value
get
value():undefined
|T
获取Deferred的值,如果为pending或rejected状态,则返回undefined。
返回值
undefined
| T
方法
promise
- promise():
Promise
<T
>
返回值
Promise
<T
>
reject
- reject(
reason?
):boolean
使用给定的reason作为原因或异常设置Promise的状态为rejected。若已经resolved或rejected状态,则返回false。
参数
名称 | 类型 |
---|---|
reason? | any |
返回值
boolean
resolve
- resolve(
value
):boolean
使用给定的值设置Promise的状态为fulfilled。若已经是fulfilled或rejected状态,则返回false。
参数
名称 | 类型 |
---|---|
value | T |
返回值
boolean