慕用5745546
2016-04-28 12:51
var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
var sum=0,i=0;
var sub;
var n=3;
while(n<=60)
{
document.write(scoreStr.substr(n,2)+" ");
sub=scoreStr.substr(n,2);
sum=sum-sub;//这段
n=n+6;
}
sum=Math.abs(sum);
document.write("<br>"+sum);
document.write("<br>"+sum/10);
我的这段代码是可以的 但是 如果把标注的那一段的减号换成了加号就不行了 加号会把这些数字连起来而不是加起来
请问这是为什么 除了用减号解决 还可以怎么解决啊
减号会默认变更数据类型为num
+号有加法和连接字符串两种解析 这些返回的都是默认字符串的 所以要用+的话要先转换数据类型才可以 不然就会变成拼接字符串
已经解决了 看到了前面大神发的parseInt 把标注段改为sum=sum+ParseInt(sub);就可以了
JavaScript进阶篇
468782 学习 · 22507 问题
相似问题