我正在编写此程序,并检查了其他类似的帖子。但我很难理解如何解决这个问题?
这是html
<body>
<h1>Hello!</h1> Please input start and end of your numbers
<input type="text" id="start" value="1" />
<input type="text" id="end" value="10" />
<button id="btn" onclick="MyFunc(document.getElementById('start').value, document.getElementById('end').value)">Click Me</button>
这是JS脚本:
function MyFunc(start, end) {
for(i=start;i<end;i++)
{
var arr = [];
arr[i].push;
document.getElementById("demo").innerHTML = arr[i]);
}
}
我想从用户输入的第一个和最后一个值构造一个数组序列,然后显示数组/执行一些计算。我已经回顾了Stack的其他答案,但无法理清这个问题。
谢谢。
答案 0 :(得分:2)
您正在声明一个空数组var arr = []
。在此之后,您正在访问其内容,因此确保它没有任何内容,因此arr[i]
为undefined
。
我认为你要做的是
function MyFunc(start, end) {
document.getElementById("demo").innerHTML = "";
var str = "";
for(i = start; i <= end; i++) {
str += i;
}
document.getElementById("demo").innerHTML = str;
}
<强> JSFiddle Demo 强>
答案 1 :(得分:-3)
更改强>
var arr= [];
要强>
var arr= new Array(size);
// size必须是整数值。
同样在for loop
在添加/删除元素之前,您始终必须初始化数组。由于未定义arr
数组,因此您获得了TypeError