Javascript 我能';t将两个var相加,i';我验证了其中两个是数字变量而不是字符串(Java脚本)
我目前正在编写一个不协调机器人,我做了一个滚动函数,它工作得很好,但我想给它加一个奖励,所以我修改了它,现在总数总是一个NaN,或者我的2个数字不是加上它们自己,而是排成一行(例如:2+2=22(对不起,我的英语不好))。这是我代码的图像 PS:我正在使用Visual Studio 这就是代码,尽管你不能运行它,因为它是为discord机器人设计的 *编辑:**我已经像你说的那样更改了代码,但在discord中使用时仍然会产生NaN。新代码已更新***EDIT2*Iv'e再次更新代码,尽管我的var奖金是一个数字var,而不是像我在标题中所说的字符串,它直到不起作用为止。滚动已完成,但总数=NaNJavascript 我能';t将两个var相加,i';我验证了其中两个是数字变量而不是字符串(Java脚本),javascript,Javascript,我目前正在编写一个不协调机器人,我做了一个滚动函数,它工作得很好,但我想给它加一个奖励,所以我修改了它,现在总数总是一个NaN,或者我的2个数字不是加上它们自己,而是排成一行(例如:2+2=22(对不起,我的英语不好))。这是我代码的图像 PS:我正在使用Visual Studio 这就是代码,尽管你不能运行它,因为它是为discord机器人设计的 *编辑:**我已经像你说的那样更改了代码,但在discord中使用时仍然会产生NaN。新代码已更新***EDIT2*Iv'e再次更新代码,尽管我的v
const Discord=require(“Discord.js”);
const bot=new Discord.Client();
变量前缀=(“*”);
bot.on('消息',(消息)=>{
if(message.author.bot)返回;
if(message.content.indexOf(prefix)!==0)返回;
const args=message.content.slice(prefix.length.trim().split(+/+/g);
const命令=args.shift().toLowerCase();
如果(命令==“滚动”){
变量编号=args[0]。拆分(“d”);
var rhs=numbers[0]。拆分(“+”)。映射(编号);
var nbdice=numbers.shift();
var dicetype=rhs[0];
var红利=0
奖金=rhs[1];
var-answer=“”;
var合计=0;
对于(变量i=0;i
函数返回如下字符串数组[“2”、“3”、“52”]
您的代码正在这样做
let number=“2+2”;
设rhs=numbers.split('+');
控制台日志(rhs);//字符串数组
let bonus=rhs[0];
设总数=2;//假设这是for循环的结果
console.log(总计+奖金);//实际上,您正在连接字符串。
请添加您的实际代码,而不是代码的图像。欢迎使用SO!为了提高问题的质量,请阅读和。除了一元+
和Number
构造函数之外,(一个也可以处理非基数10的构造函数)。