我正在学习JavaScript,而我正试图从Beginning JavaScript的示例中改进代码。具体来说,我试图让代码检查结束值是否大于起始值。
如果我输入起始值50且结束值为6或8,那么我得到假结束< = start,即使6和8都小于50.如果我输入任何其他值小于50 50,我明白了。我测试的任何起始值都有同样的问题。我在逻辑中找不到任何错误,所以我必须误解代码(或者只是盲目)。
谢谢!
Users

答案 0 :(得分:5)
您正在比较字符串表示。您应该使用parseInt
。
答案 1 :(得分:0)
试试这段代码:
<body>
<script>
while (isNaN(start) == true) {
var start = prompt("Enter starting value", "");
}
while (isNaN(end) || end <= start) {
var end = prompt("Enter ending value", "");
document.write((end.parseDouble <= start.parseDouble) + "<br/>");
document.write(start + "<br/>");
document.write(end + "<br/>");
}
答案 2 :(得分:0)
正如你所说的那样,你是Js的新手,因此我不会将你的问题标记下来。但是请考虑一下你写的这段代码:
最后进行以下更改
while (isNaN(start) == true) {
var start = prompt("Enter starting value", "");
}
while (isNaN(end) || (parseInt(end) <= parseInt(start))) {
var end = prompt("Enter ending value", "");
document.write((parseInt(end) <= parseInt(start)) + "<br/>");
document.write(start + "<br/>");
document.write(end + "<br/>");
}
谢谢&amp;干杯:)