Discord.js |我如何做到这一点,使它每2或3个单词进入一行



我尝试制作一个随机单词命令,我也是这个Discord js的新手。所以…很抱歉我糟糕的代码。我的代码是

const discord = require('discord.js')
module.exports = {
commands: 'randomWords',
minArgs: 1,
maxArgs: 1,
expectedArgs: '<Number>',

callback: async (message, arguments, text, client) => {
const request = require('request');
const https = require('https');
if (!isNaN(arguments[0])) {
var url = `https://random-word-api.herokuapp.com/word?number=${arguments[0]}`
} else {
message.channel.send("Please input a number. ex. 24")
}

// Get data from link 
https.get(url, resp => {
let data = '';

// chunk of data been received
resp.on("data", chunk => {
data += chunk
})
resp.on("end", () => {
let dataIn = JSON.parse(data);
var dataInString = dataIn.toString()
var datas = dataInString.replace(/,/g, " ")
// here you add a new line every 2 words or 3 words
console.log("nnn" + datas + "nnn")
// i know i suck at this, but my terminal was very filled and so confused reading so added spaces
// send the message
const embed = new discord.MessageEmbed()
.setAuthor(`Random Words: ${arguments[0]}`)
.setDescription(`this right here is supposed to be advertisement, so i deleted it for stack overflow nWord Separated by spaces`)
.addFields(
{ name: "Words:", value: datas },
{name: "Invite Bot Below", value: "invite bot advertisement blocked"}
)


message.channel.send(embed)
})

})        

}
}

问题出在回调中,命令处理程序与无关

问题出现在第38行附近

真的很感激你能帮我:(谢谢

let words = ["hello", "test", "ice", "cream", "fast", "food"];
let str = "";
for(var i = 0; i < words.length; i++) {
if(i % 2 === 0) str += words[i] + " ";
else str += words[i] + "n";
}
console.log(str);

也许这个例子可以帮助你解决问题。for循环遍历数组。如果i是一个相等的数字,它只打印出没有新行的值。否则,如果i不是一个相等的数字,它会打印出值,但会打印出一行新行。

其输出为:

hello test
ice cream
fast food

最新更新