Javascript 使用随机变量定义生成的最大数量

Javascript 使用随机变量定义生成的最大数量,javascript,Javascript,我正在尝试制作一个discord机器人,它允许用户与用户掷骰子,并设定一个用户定义的最大数量 if(cmd === `${prefix}roll`|| cmd === `${prefix}Roll`){ let ag = cmd.slice(5); message.channel.send("Roll The Dice!"); var roll = Math.floor((Math.random()* ag) + 1); message.c

我正在尝试制作一个discord机器人,它允许用户与用户掷骰子,并设定一个用户定义的最大数量

if(cmd === `${prefix}roll`|| cmd === `${prefix}Roll`){
       let ag = cmd.slice(5);
       message.channel.send("Roll The Dice!");
       var roll = Math.floor((Math.random()* ag) + 1);
       message.channel.send(roll);
    }
将“Math.random()*ag”中的ag替换为类似于10的东西会起作用,我只是不知道如何让它使用var
这不起作用,也不会返回终端中的任何错误

问题在于
ag
的值。如果滑动
cmd

我假设您想要创建一个介于
1-6

在这种情况下,你可以这样做

if(cmd === `${prefix}roll`|| cmd === `${prefix}Roll`){
       var ag = 6; // slice returns a string and the random generator works with a number.
       message.channel.send("Roll The Dice!");
       var roll = Math.floor((Math.random()* ag) + 1);
       message.channel.send(roll);
    }
更新

如果用户在cmd中指定一个数字为
!roll20
由于if(cmd==
${prefix}roll
)检查,上述代码根本不会执行


因此,如果用户剂量!Roll 20我怎样才能把20变成一个整数如果它解决了你的问题,考虑接受答案我会试试这个给我一点时间
cmd
的样本值是多少?它是否进入
if
块?
if(cmd.startsWith(`${prefix}roll`) || cmd.startsWith(`${prefix}Roll`)){
       var ag = /\d+/g.exec(cmd); // get the digits in the value
       ag = ag ? ag[0] : 6 // check if there is a value or default to 6 
       message.channel.send("Roll The Dice!");
       var roll = Math.floor((Math.random()* ag) + 1);
       message.channel.send(roll);
    }