yz_monkey
2016-01-08 05:45
sum=sum+parseInt(scorearr[i].substr(scorearr[i].indexOf(":")+1)这个公式求和是怎么个求和法
通过仔细查阅已经弄明白了
document.write(scorearr[1].substr(scorearr[1].indexOf(":")+1)) 输出结果就是要取的数值;
substr是获取字符串部分内容,index是获取想要找的字符的位置,“:”的位置+1就是数字所在的字符串位置。
substr 方法
返回一个从指定位置开始的指定长度的子字符串。
string.substr(start [, length ])
注意: length可选项。如 length 为 0 或负数,将返回一个空字符串。如果没有指定该参数,则子字符串到 string 的最后。
所以这样就获得了数字的字符串,然后parseInt变成number型,ok了
indexOf(“:”);这个返回的值是“冒号”所处的位置,例如冒号在3位,返回值=2(位置从0开始计算)
var sorceStr = "小明:87;小花:81;小红:97;小天:76"; var sourceArr = sorceStr.split(";"); // sourceArr=['小明:87','小花:81','小红:97','小天:76'] //从数组中将成绩撮出来,然后求和取整,并输出。 var sum = 0; for (var i = 0; i < sourceArr.length; i ++) { //sourceArr[i].substr(sourceArr[i].indexOf(":")+1) 这里是为了取出分数 //当i=0时 sourceArr[0] = '小明:87'; sourceArr[0].substr(sourceArr[0].indexOf(":")+1)='87'; //当i=1时 sourceArr[1] = '小花:81'; sourceArr[1].substr(sourceArr[1].indexOf(":")+1)='81'; // ..... sum += parseInt(sourceArr[i].substr(sourceArr[i].indexOf(":")+1)); }
JavaScript进阶篇
468194 学习 · 21891 问题
相似问题