为了账号安全,请及时绑定邮箱和手机立即绑定

sum = sum + parseInt(scoreArr[i].slice(3,5));请问什么意思?

 sum = sum + parseInt(scoreArr[i].slice(3,5));请问什么意思?

正在回答

4 回答

题主的问题中slice(3,5)这种写法是有其局限性的,它的意思是取第3和第4位的数(不包括第5位),这就写死了,不能灵活变化。

为什么这样说呢,我们来看个其它例子如果其中一名学生的情况是【唐小朵:100】,你对这种情况还是写slice(3,5)那么得到的就是第3位和第4位,你看看它就是指冒号和数字1,而不是真正的分数100。最完美的写法应该是采用substr来获取从冒号开始的所有内容,也就是最全面的分数,可以灵活变化。

所以为了得到单个学生的数字分数,可以这样来写scoreArr[i].substr(scroeArr[i].indexOf(':')+1)。

我们再来慢慢解释下刚刚的一种更好的写法:

(1)indexOf(':')是指冒号第一次出现时的位置,也就是它对应的索引号,把scroreArr[i].indexOf(':')加上一个1,是为了从冒号的后一位开始找分数。

(2)substr就是从字符串中提取从某个位置开始的数。也就是从上一步中得到的数字开始获取至最后一位数。不管考试分数是1位数,2位数,还是3位数,都可以全面的获取到。

对于题主的问题,sum=sum+某个数,这个不懂,其实就是对”采用for循环对数组中的数字进行累计相加“这个知识点以及”i=i+某个数“这个知识不懂。这2个知识点解释起来就又有点长了。有空可以联系我,再慢慢解释回答。

3 回复 有任何疑惑可以回复我~

取数组scoreArr[i]中元素第3到5位(即成绩)出来,用parseInt转换成int类型,再累加

0 回复 有任何疑惑可以回复我~

取数组scoreArr[i]中元素第3,4位(即成绩)出来,用parseInt转换成int类型,再累加

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

sum = sum + parseInt(scoreArr[i].slice(3,5));请问什么意思?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信