简单的Javascript定时计数器

Simple Javascript timed counter

我正在做以下事情:

function countUp(c){
  c.value = c.value + 1;
  $('#number').text(c.value);
}

var counter = {value: 0};

window.setTimeout(countUp(counter), 100);

出于某种原因,我的计数器的值似乎始终保持为 1。我尝试使用对象而不是变量,因为据我所知,对象是通过引用而不是值传递的,我希望我能改变这一点通过我的 countUp 函数计算值。

明显不行,怎么了?

这是一个Codepen

你想要setIntervalsetTimeout 是一次性交易。

setInterval(function () {
  countUp(counter)
}, 100);