首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

为什么不是数字的相加而是字符串的联接?该如何处理

2012-02-05 
为什么不是数字的相加而是字符串的联接?varsumCount[ 12 , 12 , 13 ]//sumCount是以字符串的方式

为什么不是数字的相加而是字符串的联接?
var   sumCount=[ "12 ", "12 ", "13 "];//sumCount是以字符串的方式取得的数字数组//
var   s=0;
  for(i=0;i <sumCount.length;i++){
  s=(s-0)+(sumCount[i]-0);
    }

javascript中这类问题应怎么处理?

[解决办法]
<script language= "javaScript ">
var sumCount=[ "12 ", "12 ", "13 "];//sumCount是以字符串的方式取得的数字数组//
var s=0;
for(i=0;i <sumCount.length;i++){
s=(s-0)+(eval(sumCount[i])-0);
}

</script>
[解决办法]
<script language= "javascript ">
var sumCount=[ "12 ", "12 ", "13 "];//sumCount是以字符串的方式取得的数字数组//
var s=0;
for(i=0;i <sumCount.length;i++){
s+=parseInt(sumCount[i]);
}
alert(s);
</script>

[解决办法]
1+1 === 1-(-1)
:D

<script language= "javascript ">
var sumCount=[ "12 ", "12 ", "13 "];//sumCount是以字符串的方式取得的数字数组//
var s=0;
for(i=0;i <sumCount.length;i++){
s =-(-s)-(-sumCount[i]);
}
alert(s);
</script>
[解决办法]
<script type= "text/javascript ">
var sumCount = "1,1.4 ".split( ", ");
var s = 0;
for (i = 0 ; i < sumCount.length ; i ++) {
s += Number(sumCount[i]);
}
alert(s);
</script>
晕倒,还以为你要转串呢。

热点排行