gpt4 book ai didi

javascript - setTimeout 返回一个 promise

转载 作者:行者123 更新时间:2023-12-02 23:37:58 26 4
gpt4 key购买 nike

我正在创建一个有 2 个参数的函数:

  • 参数1:回调函数,
  • 参数2:时间x(ms)

该函数将在 x 毫秒后调用回调函数并返回一个 promise 。

我的代码如下。 1秒后才打印“再见”

function doAfter(func, time) {
var promise = new Promise(function(resolve, reject) {
setTimeout(function(data) {
resolve(data);
}, time);
});
return promise;
}

function sayHello() {
console.log('Hello');
}

function sayGoodbye() {
console.log('Goodbye');
}

doAfter(sayHello, 1000).then(sayGoodbye);

预期行为:WAITING 1 秒,然后打印“Hello Goodbye”

最佳答案

您需要解析func()datasetTimeout

中未定义

function doAfter(func, time) {
var promise = new Promise(function(resolve, reject) {
setTimeout(function() {
resolve(func());
}, time);
});
return promise;
}

function sayHello() {
console.log('Hello');
}

function sayGoodbye() {
console.log('Goodbye');
}

doAfter(sayHello, 3000).then(sayGoodbye);

关于javascript - setTimeout 返回一个 promise ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56207468/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com