2017-07-02 96 views
0

因此,當我的機器人有人清除頻道時,我想添加一個到清除量,然後將第一個值關閉,以便它不清除它們的命令,但是當我嘗試1加入參數的值傳遞它只是把數字背後的價值...任何幫助,我在JS」實在太蹩腳了你們也如此......discord.js bot數學不正常

if (args[1]){ 
    var messagecount = args[1]; 
    var messagetotal = Math.floor(messagecount + 1); // Adding 1 to passed argument 
    console.log(messagetotal); // Outputting to console, Console is reading the argument with 1 on the end EX: arg: 2 | output: 21 
// message.channel.fetchMessages({limit: messagecount}).then(messages => message.channel.bulkDelete(messages).then(messages => message.channel.send("Purged `" + messages.size + "` messages."))); 
} else { 
// message.channel.send("Usage: !purge (Number)"); 
} 
+0

是messagecount一個字符串?也許嘗試parseInt(messagecount)+ 1 –

+0

@KhauriMcClain是的,我個人不知道區別,因爲我是JS新手,wigi幫助我。 – PMCJohn

回答

1

我不知道確切的args[1]的內容是,但關於您對錯誤的解釋,似乎該值是一個格式爲字符串的數字。

的區別:

字符串

args[1] = "1"; 
console.log(args[1] + 1); 

輸出:"11"

整數

args[1] = 1; 
console.log(args[1] + 1); 

輸出:2

如果您將一個數字添加到字符串中,它將被追加並且不會以數學方式添加。

要將數字字符串格式爲整數,更換

var messagecount = args[1];

通過

var messagecount = parseInt(args[1]);

+0

非常感謝你<3 – PMCJohn