Javascript 从内部调用方法不起作用

Javascript 从内部调用方法不起作用,javascript,Javascript,一段时间后,我试图再次从内部调用一个方法,但它不起作用 我有以下建议: Hi.prototype.stuff = function(){ console.log("hello") setTimeout(()=>this.stuff(), 1000) } 但是,它只向控制台输出一次hello。它应该输出hello两次。有没有办法做到这一点?您是否正确地声明并实例化了Hi?这似乎有效: 函数Hiname{ this.name=名称; } Hi.proto

一段时间后,我试图再次从内部调用一个方法,但它不起作用

我有以下建议:

Hi.prototype.stuff = function(){
    console.log("hello")
    setTimeout(()=>this.stuff(), 1000)
}

但是,它只向控制台输出一次hello。它应该输出hello两次。有没有办法做到这一点?

您是否正确地声明并实例化了Hi?这似乎有效:

函数Hiname{ this.name=名称; } Hi.prototype.stuff=函数{ log`Hello${this.name}`; setTimeout=>this.stuff,1000; }; 常数x=新的Hi'Dshiz';
x、 东西 您如何调用该函数

function Hi() {

}
Hi.prototype.stuff = function(){
    console.log("hello")
    setTimeout(()=>this.stuff(), 1000)
}

Hi.prototype.stuff();

对我有用。

你怎么称呼Hi?创建const\uu this=this;在函数启动之前,然后在函数内部使用它。您显示的代码不会记录任何内容。@connexo哦,derp。。我测试了错误的文件,并认为它是为我为这个问题创建的文件记录的。竖起箭头。。贴出的答案帮助我解决了问题。。我想我没有意识到Hi也应该是一个函数。但是有一个问题,setTimeout不应该只执行这个.stuff一次吗?您的代码片段的行为更像setInterval@Dshiz那是因为它通过setTimeout调用自己,setTimeout调用自己,setTimeout调用自己,setTimeout调用自己,setTimeout调用自己,setTimeout调用自己,setTimeout调用自己,setTimeout调用自己,setTimeout调用自己,setTimeout调用自己,setTimeout调用自己,setTimeout调用自己,setTimeout调用自己,set。。。你明白了。@Reality,明白了。。这是有道理的。。。我将添加一个计数器或其他东西来阻止它运行多次。谢谢。。我为这个问题将代码写入了一个新文件,并意识到我遗漏了一些东西,因为我没有运行正确的文件。。哎呀。