gpt4 book ai didi

javascript - javascript 的一个示例程序的输出给出了错误的答案

转载 作者:行者123 更新时间:2023-12-02 17:59:29 25 4
gpt4 key购买 nike

我正在读一本名为“Hands on node.js”的书,作者是“Pedro Teixiera”。

我试图执行那本书中给出的一个相同的程序,该程序将调用一个函数,并且该函数在某个时间间隔内一次又一次地递归地调用同一个函数。但是当我执行时,它只给出一次“1”并停止请帮我弄清楚为什么它无法再次调用相同的函数。示例程序如下:

var schedule = function(timeout, callbackfunction) {
return {
start: function() {
setTimeout(callbackfunction, timeout)
}
};
};

(function()
{
var timeout = 10000; // 1 second
var count = 0;
schedule(timeout, function doStuff() {
console.log(++ count);
schedule(timeout, doStuff);
}).start(timeout);
})();

最佳答案

您实际上并没有再次调用该函数。 start() 是启动计时器的部分。

schedule( timeout, function doStuff() {
console.log( ++count );
schedule( timeout, doStuff ).start(); // <--- added .start() here
}).start();

(另请注意,start() 函数不接受参数。)

关于javascript - javascript 的一个示例程序的输出给出了错误的答案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20680044/

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