我正在写我的第一个Discord机器人。我希望他阅读用户消息,然后将消息发回,用emojis分隔。所以效果会是这样的:https://i.stack.imgur.com/ysg4f.png
所以这在理论上是有效的 - 我在理论上说,因为我使用完全荒谬的解决方案只是为了表明我的目标:
if (message.substring(0, 2) == 'm.') {
var args = message.substring(2).trim().split(/ +/g);;
var cmd = args.shift().toLowerCase();
switch(cmd) {
// m.clap
case 'clap':
bot.sendMessage({
to: channelID,
message: ':clap: ' + args[0] + ' :clap: ' + args[1] + ' :clap: ' + args [2]
});
break;
显然,这只适用于最大值。三个单词的句子,我需要它来处理任何长度的句子。
我尝试在for循环中包装“sendMessage”函数,从0迭代到args.length,但这使得机器人显然在单独的消息中发送每个单词。它不会让我在sendMessage函数中放置一个for循环。
任何帮助将不胜感激。谢谢!!!
您可以使用join()
方法。
message: ':clap: ' + args.join(':clap: ')