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

各位前辈,这个问题我看了一天了,还是无法理解,求教

var sum=0;
for(var i=0;i<Str.length;i++){
 sum+=parseInt(Str[i].substring(3));
 }

首先第一个问题:为什么要先赋予sum=0的这个值?为什么不能直接写成var sum+=parseInt(Str[i].substring(3))

第二个问题:sum“+=”这个+号怎么理解?为什么要加上这个加号呢?我看之前的教程说i+=1,拆开应该是i=i+1,那转化到上面这组函数,那应该是sum=sum+parseInt(Str[i].substring(3)),那sum=0,加上的意义何在?

还请赐教,折磨我一天了。。。。。。。。。。。。不搞明白心不死啊

正在回答

3 回答

1、如果你在循环体里面写 var xx=xxx;那么此变量会被循环创建,每次叠加的都是新对象,达不到叠加的目的。

2、+=只是一种简约写法,在java里有自动转换的功能。

最后,学东西是:“知其然,再知其所以然”,别光想着为什么,先把东西做出来再去追究根本。

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

aurayang 提问者

谢谢赐教,虽然还是没看懂,我是先按照我错误的理解写出后达不到效果,然后再看别人的代码,把正确答案加上了就能正确显示了。然后四处找解释,但是还是不能理解,才来请教的。本人0基础,一点一点自学呢,所以理解能力较弱,还请理解。
2015-04-08 回复 有任何疑惑可以回复我~

http://www.cnblogs.com/terryglp/articles/1776695.html

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

aurayang 提问者

谢谢,我仔细看看
2015-04-08 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

各位前辈,这个问题我看了一天了,还是无法理解,求教

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