农民工自学JS,谦卑地向各位请教,
start=prompt("请输入开始的值:");
end=prompt("请输入结束的值:");
alert("开始的值是:"+start);
alert("结束的值是:"+end);
alert("从"+start+"+到"+end+"的和="+sum);
var sum=0
if (start≤end)
sum+=start++
假如去掉最后三行代码,并且倒数第四行alert中的字符串结尾处,去掉+sum,程序是按照设想进行:
提示输入开始值-提示输入结束值-确认开始值-确认结束值-弹出alert对话框
加入最后三行代码,浏览器什么都不显示了,
已经折腾一晚上了,请会的朋友指点一下,万分感谢!
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
首先,要先进行变量的声明然后才能使用该变量。所以, var sum=0 要写在 alert("从"+start+"+到"+end+"的和="+sum);
其次,既然是要实现从1加到100,那么就需要用到循环了,单纯的if判断相加是不可以的,需要用到循环来进行相加。循环又包括for、while和 do while几种,每种都可以做到循环只是循环的条件不同,你可以查看一下这方面的资料。在这里如果用for循环实现的话可以这么写:
``
start=start1;end=end1;
//定义一个中间变量n用于进行计算。
for(var n=start;n<=end;n++)
{
sum=sum+n;
}
这个之所以start和end都乘1是因为prompt返回的是一个字符串如果直接相加就变成了字符串相加了会得到一大串字符而不是想要的数字,如:'1'+'100'得到的结果是'1100'而不是101,通过乘1可以简单地把字符串类型的数字转换成数字,这样就可以再进行相加的操作了。最后得到的sum的值就是你想要的结果。还有一点,在程序当中‘≤’是用‘<=’表示,‘≥’用‘>=’表示,等于是‘==’,不等于是‘!=’。
最后要说的是,为了养成良好的编程习惯要注意标点符号的使用如结尾用分号“;”等,在一些编程语言中没有';'结尾会报错的。
start=prompt("请输入开始的值:");
end=prompt("请输入结束的值:");
alert("开始的值是:"+start);
alert("结束的值是:"+end);
var sum=0;
start=start1;end=end1;
for(var n=start;n<=end;n++)
{
sum=sum+n;
}
alert("从"+start+"+到"+end+"的和="+sum);