JavaScript_字符串中提取數字并求和
<script?type="text/javascript"> ??var?source?=?"小明:87;小花:81;小紅:97;小天:76;小張:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76"; ??var?source2?=?source.split(";"); ??for?(var?i?=?0;?i?<?source2.length;?i++)?{ ??????var?score=new?Array(); ??????score[i]=parseInt(source2[i].substr(source2[i].indexOf(":")+1));//source2[i].indexOf(":")表示從:出現的位置,而+1則是把:下一個開始提取 ??????document.write(score[i]+","); ??????var?sum; ??????sum?+=score[i]; ???} ???document.write(sum); ???</script>
為啥每運行一次,sum的值就會加上815(815才是本來要求的sum值)
2017-02-15
var?sum;應該放到循環外面且要賦值為0.
2017-02-15
對sum的賦值應該放在循環的外面,且要賦初始值0
2017-02-15
<script?type="text/javascript">
??????var?source?=?"小明:87;小花:81;小紅:97;小天:76;小張:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
??????var?source2?=?source.split(";");
????????????????var=sum; sum=0;
??????????????????????for?(var?i?=?0;?i?<?source2.length;?i++)?{
??????????????????????var?score=new?Array();
??????????????????????score[i]=parseInt(source2[i].substr(source2[i].indexOf(":")+1));
???????????????? //source2[i].indexOf(":")表示從:出現的位置,而+1則是把:下一個開始提取
??????????????????????document.write(score[i]+",");
???????????????????????sum?+=score[i];?}
???????????????????????document.write(sum);
???</script>
? ?