gpt4 book ai didi

javascript - NodeJS setInterval错误

转载 作者:行者123 更新时间:2023-11-30 16:51:20 24 4
gpt4 key购买 nike

阅读 NodeJS 书中的教程。它为我提供了用于尝试 setInterval 的代码:

var x = 0,
y = 0,
z = 0;

function displayValues() {
console.log("X=%d; Y=%d; Z=%d", x, y, z);
}

function updateX() {
x += 1;
}

function updateY() {
y += 1;
}

function updateZ() {
z += 1;
displayValues();
}

setInterval(updateX, 500);
setInterval(updateY, 1000);
setInterval(updateZ, 2000);

而且它的工作方式与预期的一样。所以我尝试制作我自己的更简单的版本:

var x = 0;

function incrementX() {
x++;
console.log(x);
}

setInterval(incrementX(), 1000);

而且它不起作用。它在一秒钟后显示 1,然后给我这个错误信息:

timers.js:265
callback.apply(this, args);
^
TypeError: Cannot read property 'apply' of undefined

谁能向我解释为什么第一个片段有效,而第二个片段无效?

最佳答案

不要使用大括号()

setInterval(incrementX, 1000);

当您传递 incrementX() 时,您实际上传递的是 incrementX() 返回的结果,而不是函数。 incrementXsetInterval 期望的函数。

关于javascript - NodeJS setInterval错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30479647/

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