在JavaScript中,有没有一种方法可以在超时后再次调用当前函数(以及它的参数)?

在JavaScript中,有没有一种方法可以在超时后再次调用当前函数(以及它的参数)?,javascript,function,timeout,nodes,Javascript,Function,Timeout,Nodes,例如: function foo(){ setTimeout(/*function(){foo(and all arguments);}*/, 2000); } 有没有办法在超时后再次调用相同的函数。我遇到的问题是,参数不是字符串,而是节点。例如: foo(document.body, document.getElementById('header')); 你的问题让我觉得你在试图这么做 HTML 在上,你能解释一下你想实现什么吗?你想反复无限期地调用foo,直到页面刷新为止?是的,相同的概

例如:

function foo(){
setTimeout(/*function(){foo(and all arguments);}*/, 2000);
}
有没有办法在超时后再次调用相同的函数。我遇到的问题是,参数不是字符串,而是节点。例如:

foo(document.body, document.getElementById('header'));

你的问题让我觉得你在试图这么做

HTML


上,你能解释一下你想实现什么吗?你想反复无限期地调用
foo
,直到页面刷新为止?是的,相同的概念。我正在等待一个变量的更改。您正在等待哪个变量更改
标题
?除了轮询,还有其他方法,您可以使用(现在已弃用)或再次感谢,我将看看它们。
<div id="header"></div>
function foo() {
    setTimeout((function (that, args) {
        return function () {
            foo.apply(that, args);
        };
    }(this, arguments)), 2000);

    console.log(arguments);
}

foo(document.body, document.getElementById('header'));