为什么定义变量sum=0,在sum+=的条件下 输出sum还等于0
var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
var scoreStr1=scoreStr.split(";");
var sum=0;
var scoreStr1=new Array();
for(var i=0;i |
免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。
版权声明:作者保留权利,不代表天盟立场。
|
|
|
|
将var scoreStr1=new Array(); 去掉,因为var scoreStr1=scoreStr.split(";");执行后scoreStr1已经是数组了,在用var scoreStr1=new Array();就相当于将scoreStr1初始化为一个新空数组。 |
|
|
|
|
var scoreStr1=scoreStr.split(";")这句在声明scoreStr1的同时已经将其实例化了,如果再用new Array()将其实例化,scoreStr1将指向一个空的Array对象,所以输出的结果是0。楼主的代码中只需要将var scoreStr1=new Array()这句注释掉就可以得到期望的结果了。
varscoreStr="小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";varscoreStr1=scoreStr.split(";");varsum=0;//varscoreStr1=newArray(); |
|
|
|
|