JS中,数组求和这一段代码,为什么求和那个部分出问题了啊,如果直接代码里指定数组就正常求和。

vartemp=window.prompt("请输入每名儿童滑轮的时间");vartime=temp.split(",");//拆分放到新数组for(i=0;i<time... var temp = window.prompt("请输入每名儿童滑轮的时间");
var time = temp.split(","); //拆分放到新数组

for(i=0;i<time.length;i++){
document.write(time[i]+"/");}
document.write("<br/>"); //遍历一遍新数组

var timesum = 0;
for(i=0;i<time.length;i++){
timesum += time[i];
} //数组求和

document.write("五个小孩总共用时"+timesum+"<br/>");
var timeavg=timesum/time.length; //数组平均数
document.write("五个小孩平均用时"+timeavg+"<br/>");
展开
 我来答
wojiushiwoltq
2012-09-11 · TA获得超过875个赞
知道小有建树答主
回答量:369
采纳率:100%
帮助的人:359万
展开全部
for(i=0;i<time.length;i++){
timesum += time[i];
}
这个应该取出来的是字符串吧,要转换成数字啊,
for(i=0;i<time.length;i++){
timesum += parseInt(time[i]);
}
追问
谢谢啊,嘿嘿,确实是这个问题;还有个小问题
window.prompt()他存入的数据比如(1,啊,A)或者(1,2,3)是全部都按字符串处理吗?
能输入完直接转换一下它吗?比如
var temp = window.prompt(" ");
temp = parseInt(temp);
然后马上做加法...
追答
这个是不行的,parseInt本来就是用来一个一个转换的,你这样就是想一次就把你输入的字符串转成一个数字数组;这样是不行的。
parseInt输出的是1,parseInt这个函数是一个一个字符进行解析,遇到不是数字的字符时就返回前面已解析完的数字。
所以不管你输入的是1,啊,A;还是1,2,3都返回的是1
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式