(用javascript)输入两个整数,求两个数之间的和

用javascript写我自己写了个<scriptlanguage="javascript"><!--vara,b,sum=0;a=prompt("第一个数","");b... 用 javascript写
我自己写了个
<script language="javascript">
<!--
var a,b,sum=0;
a=prompt("第一个数","");
b=prompt("第二个数","");
for(i=a;i<=b;i++)
{
sum=sum+i;
}
alert(""+sum+"");
-->
</script>
不过他只显示我输入2个数间的顺序 不求和 哪里错了
展开
 我来答
854235163
推荐于2018-05-04 · TA获得超过157个赞
知道答主
回答量:25
采纳率:0%
帮助的人:0
展开全部
<script language="javascript">
<!--
var a,b,sum=0;
a=prompt("第一个数","");
b=prompt("第二个数","");
for(i=a;i<=b;i++)
{
sum=sum+parseInt(i,10);
}
alert(""+sum+"");
-->
</script>
我详细解释下:
正如你所看到的,我只是修改了sum=sum+i;代码,将它改为了sum=sum+parseInt(i,10);
这是因为i不是数字而是字符串,为什么呢,因为a=prompt("第一个数","");中prompt对话框都返回的是字符串,故a是字符串,for(i=a;i<=b;i++)中,a赋予i,故i是字符串了。字符串进行+运算的时候,它的作用不再是数学上的意义了,而是连接连个字符串,所以它他只显示你输入2个数间的顺序。

了解了这个,再看数字和字符串进行+运算的情况,请记住,任何与字符串进行+运算都将 不是字符串的运算元 隐式转化为字符串再连接连个两个字符串。

结论,只有当数字不和字符串进行+运算时,+的作用才是数学意义上的求和,否则起连接字符串的作用。

推广:1、字符串与任何数据类型的数据执行+运算的将是连接字符串的作用。
2、数值与数值、布尔类型执行+运算,则是求和举个例子:
<script language="javascript">
<!--
var s=true;
alert(s+"1");
-->
</script>
是不是2呢,因为true表示1啊。

参考资料: http://www.attjs.com/index.html

niubore
2009-10-20 · TA获得超过856个赞
知道小有建树答主
回答量:293
采纳率:0%
帮助的人:306万
展开全部
<script language="javascript">
<!--
var a,b,sum=0;
a=prompt("第一个数","");
b=prompt("第二个数","");
sum=parseInt(a)+parseInt(b);
alert(sum);
</script>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式