类: Deferred<T>
更新: 2025/10/24 字数: 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
getvalue():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
