试图弄清楚如何使用这个JQuery脚本正确使用setInterval

Pur*_*ome 2 javascript jquery datetime

这是我昨天问过的上一个问题的延续.

我正在尝试根据预定的时间值显示时钟..而不是当前的客户端时间.

这是我的JQuery ......

$(document).ready(function () {
    var currentTime = new Date('3/09/2010 9:27:29 PM');
    setInterval("DisplayTime(currentTime, $('.answer-body'))", 1000);
})

function DisplayTime(currentTime, destination) { ... }
Run Code Online (Sandbox Code Playgroud)

现在在DisplayTime函数内部,我显示了一些自定义文本,调用destintion.html(..)显示自定义文本.KEWL.最后,在我显示文本之后,我想要在间隔的下一次迭代中添加1秒currentTime,它不是使用原始时间值,而是1秒后.

问题:我无法将currentTime变量传递给setInterval函数.我不是特别希望在这里有一个匿名功能..除非我别无选择.

有人可以帮助我或重构我的错误代码吗?

所以每一秒都会重新显示时间,并添加新的秒.

Nic*_*ver 5

相反,你应该在这里使用匿名函数,如下所示:

setInterval(function() {
  DisplayTime(currentTime, $('.answer-body'));
}, 1000);
Run Code Online (Sandbox Code Playgroud)

不要传递一个字符串,setInterval()或者setTimeout()如果你可以避免它,它会执行一个eval()并且有范围问题,就像你当前遇到的一样,因为currentTime它不是一个全局变量.