所以我的问题是,我编写了这段代码,该代码需要两个数字,并写入这些数字之间的所有数字(包括给定的两个数字)。该代码适用于数字4和7,它打印出“ 4 5 6 7”,但是当第二个数字比第一个数字稍大时(例如对于数字6和14),该代码不执行任何操作。如果有人可以向我解释为什么会这样以及我如何解决这个问题,我会很高兴。
function calculate() {
var start = document.getElementById("number1").value;
var end = document.getElementById("number2").value;
var answer = "";
for (var i = start; i <= end; i++) {
answer = answer + i + " ";
}
document.getElementById("answer2").innerHTML = answer;
}
<input type="number" id="number1">
<input type="number" id="number2">
<button onclick="calculate()">Pokaż</button>
<div id="answer2"></div>
该value
属性返回一个字符串,表示value
文本字段的属性值。
为了进行比较start
,end
您需要将它们转换为数字(例如,使用Number
原始包装器),否则字符串6
将(按字母顺序)大于string 14
。
function calculate() {
var start = Number(document.getElementById("number1").value);
var end = Number(document.getElementById("number2").value);
var answer = "";
for (var i = start; i <= end; i++) {
answer = answer + i + " ";
}
document.getElementById("answer2").innerHTML = answer;
}
<input type="number" id="number1">
<input type="number" id="number2">
<button onclick="calculate()">Pokaż</button>
<div id="answer2"></div>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句