当我通过chrome中的html页面运行此代码,并输入,例如,number1 = 1000而number2获得2000时,它的警报1000更大。为什么呢?
var number1 = prompt("Pick a number");
var number2 = prompt("Pick another number");
if (number1 < number2) {
alert(number1 + "is bigger!");
} else if (number2 < number1) {
alert(number2 + "is bigger!");
} else if (number1 == number2) {
alert(number1 + "is equal to" + number2)
}
答案 0 :(得分:1)
上面有两个问题:
您的邮件是落后的
您正在比较字符串,而不是数字
您希望将prompt
的结果转换为数字,并更正您要显示的消息。
您有几种将字符串转换为数字的选项;我列出了您的选项及其优缺点in this answer。
如果您只修复#1而不是#2,那么您最终会说"20"
小于"3"
,因为将字符串与<
进行比较会比较它们 lexigraphically ,"2"
出现在"3"
之前("0"
中的"20"
从未被查看过。)