{
var tmpArr = new Array()
var n = prompt("Please enter a number","0")
if (isNaN(n) || n<=0)
{
return 0
}
else if (n>0)
{
for (i = 0i <ni++)
{
tmpArr[i] = i
}
return tmpArr
}
}
document.write(arr())
<!DOCTYPE html><head>
<meta charset="UTF-8">
<title></title>
<script language="javascript">
function calc(){
let result=document.getElementById("result")
let n=document.getElementById("text").value
if (n=="") {
result.innerHTML="请输入内容"
}else if (!(/(^[1-9]\d*$)/.test(n))) {
result.innerHTML="输入的不是正整数"
}else {
let s=0
for(let i=1i<=ni++){
s+=i
}
result.innerHTML="1到n累加和s="+s
}
}
</script>
</head>
<body>
<input type="text" id="text"/>
<input type="button" value="计算" onclick="calc()"/>
<div id="result"></div>
</body>
</html>
假设用户是输入到一个文本框吧,文本框在myform表单中,name为text.还有一个按钮,用户点击它的时候会出来结果,用一个消息框显示:
<script language="javascript">
function myresult(){//定义一个函数
var result=0//用来保存求得的和,
if(isNaN(document.myform.text.value)){ //isNaN()用来判断用户的输入是否是一个整数
alert("您输入的不是一个整数,请重新输入")
document.myform.text.focus()//定位光标到文本框
document.myform.text.select()//使框中内容被选中
}else{
//利用parseInt()方法将文本框中的内容转换为一个数字,如果输入的是“23a2”,那这个方法的结果就是“23”
var num=parseInt(document.myform.text.value)
result=num*(num+1)/2 //利用数列的求和公式
}
alert("所得的结果是: "+result)//用消息框显示结果
}
}
</script>
这个是JS程序,我做了异常处理,也就是说用户如果输入的不是整数要提醒用户,下面我弄的全部代码:
<html>
<head>
<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312" />
<title>求和</title>
<script language="javascript">
function myresult(){//定义一个函数
var result=0//用来保存求得的和,
if(isNaN(document.myform.text.value)){ //isNaN()用来判断用户的输入是否是一个整数
alert("您输入的不是一个整数,请重新输入")
document.myform.text.focus()//定位光标到文本框
document.myform.text.select()//使框中内容被选中
}else{
//利用parseInt()方法将文本框中的内容转换为一个数字,如果输入的是“23a2”,那这个方法的结果就是“23”
var num=parseInt(document.myform.text.value)
result=num*(num+1)/2 //利用数列的求和公式
}
alert("所得的结果是: "+result)//用消息框显示结果
}
}
</script>
</head>
<body>
<form name="myform" method="post" action="#">
<p>请在这里输入一个整数:
<input name="text" type="text" id="text" height=20px width=130px>
</p>
<p>
<input name="btnadd" type="button" value="确定" onClick="myresult()">
</p>
</form>
</body>
</html>
有不明白的地方接着问。
听了那个人的我又试了试我原来用的循环,输入一个八位的还行,十几位就不行了,改了之后输入一个二十位的也没事了,就是结果大点