Javascript 如何让代码在执行其余函数之前等待函数?

Javascript 如何让代码在执行其余函数之前等待函数?,javascript,node.js,function,discord.js,Javascript,Node.js,Function,Discord.js,我正在为一个不和谐机器人做一些东西,但我想不出这部分 Discord是一个聊天应用程序,你可以制作服务器和频道供人们聊天,还有机器人,这就是我正在制作的 基本思想是我写一个命令,机器人拒绝每个人在聊天中交谈的权限,倒计时开始,当倒计时达到0时,机器人允许再次交谈,是的,这是一个JoJo引用。我已经准备好了所有的允许和拒绝,只需要倒计时就可以了 我的问题是我不能让我的代码等待它自己 //其他一些代码 console.log(“Toki-uo-tomare!”) var x=0; 函数go(){ c

我正在为一个不和谐机器人做一些东西,但我想不出这部分

Discord是一个聊天应用程序,你可以制作服务器和频道供人们聊天,还有机器人,这就是我正在制作的

基本思想是我写一个命令,机器人拒绝每个人在聊天中交谈的权限,倒计时开始,当倒计时达到0时,机器人允许再次交谈,是的,这是一个JoJo引用。我已经准备好了所有的允许和拒绝,只需要倒计时就可以了

我的问题是我不能让我的代码等待它自己

//其他一些代码
console.log(“Toki-uo-tomare!”)
var x=0;
函数go(){
console.log(x)
if(x++<5){
设置超时(go,500);
}
}
go();
控制台日志(“Toki wa ugokidasu…”)
//其他代码
我希望看到

Toki-uo-tomare!
0
1.
2.
3.
4.
5.
Toki wa ugokidasu…

但是我看到了这个

Toki-uo-tomare!
0
东华ugokidasu。。。
1.
2.
3.
4.
5

const TalkingDuration=5000;
让canTalk=true;
window.botInterval=setTimeout(函数(){
canTalk=false;
},通话时长);
setInterval(函数(){
if(canTalk)console.log(“Toki-uo-tomare!”);
}, 100);

//因此,客户端可以通话5秒,然后机器人将停止聊天。您可以使用循环,每5秒重新执行一次任务,只需添加另一个设置间隔。。。希望您喜欢它
只需将
else{…}
添加到
go()
函数中,并将最后一行
控制台.log
放在那里。因此,当函数调用自身并看到
x==5
时,它将转到
else
阻止并记录该消息。其他链接的答案或上面的@Andrew注释将为您提供如何正确执行此操作的线索。我将尝试解释这里发生了什么:代码正在按顺序运行。第一行,第一行。还有一个函数定义,它本身什么都不做。然后调用该函数,并运行一次(它还将自己排队,以便稍后再次运行)。然后最后一行就开始了。500微秒后,fxn再次运行,正如它被告知的那样。@GamBar很乐意帮助:)您的代码只是垃圾邮件
Toki-uo-tomare虽然我需要它是一个倒计时排序,所以我为什么要把它设为logx