Javascript JQUERY Int和字符串加法

Javascript JQUERY Int和字符串加法,javascript,string,math,int,add,Javascript,String,Math,Int,Add,好的,我有以下“脚本”: 所以这个简单的数学运算的结果是0加上parseInt或008不加它。应该是8点。 我尝试了几个不同的数字(而不是08、04或05等等) 或22-09 有时结果值是正确的,有时不是。 我尝试将parseInt应用于所有“数学运算”。。。没有成功。 我认为这是一个小错误,但我不明白:(请确保在解析int时指定基: parseInt(value[0], 10); parseInt(value[1], 10); 全部代码: var text = '24 - 08'; var

好的,我有以下“脚本”:

所以这个简单的数学运算的结果是0加上parseInt或008不加它。应该是8点。 我尝试了几个不同的数字(而不是08、04或05等等) 或22-09

有时结果值是正确的,有时不是。 我尝试将parseInt应用于所有“数学运算”。。。没有成功。
我认为这是一个小错误,但我不明白:(

请确保在解析int时指定基:

parseInt(value[0], 10);
parseInt(value[1], 10);
全部代码:

var text = '24 - 08';
var value = text.split(" - ");


var result = 24 - parseInt(value[0], 10);
result = result + parseInt(value[1], 10);
alert(result);

当字符串以
0
parseInt开头时,假定数字为八进制(以8为基数)。这是不推荐的行为,但无论如何它都是这样。数字
08
在八进制中无效,因为只有数字
0-7
存在,所以它只返回
0
。它确定8不是数字的一部分,就像看到
0A
0T
(或任何其他非
0-7
字符)


更多信息。事实上,您可以在该页底部附近找到导致问题的
parseInt(“08”);
示例。

请确保在解析int时指定基数:

parseInt(value[0], 10);
parseInt(value[1], 10);
全部代码:

var text = '24 - 08';
var value = text.split(" - ");


var result = 24 - parseInt(value[0], 10);
result = result + parseInt(value[1], 10);
alert(result);

当字符串以
0
parseInt开头时,假定数字为八进制(以8为基数)。这是不推荐的行为,但无论如何它都是这样。数字
08
在八进制中无效,因为只有数字
0-7
存在,所以它只返回
0
。它确定8不是数字的一部分,就像看到
0A
0T
(或任何其他非
0-7
字符)


更多信息。事实上,您可以在该页底部附近找到导致您出现问题的
parseInt(“08”);
示例。

这似乎可以使用parseFloat而不是parseInt。 你可以做:

var result = 24 - parseFloat(value[0]);
result = result + parseFloat(value[1]);
alert(result);

然后可以使用parseInt转换为int。

这似乎可以使用parseFloat而不是parseInt。 你可以做:

var result = 24 - parseFloat(value[0]);
result = result + parseFloat(value[1]);
alert(result);

然后,您可以使用parseInt将其转换为int。

如果答案对您有帮助,请确保您接受!如果答案对您有帮助,请确保您接受!