为什么javascript会返回TRUE:
if (Hfin > HfinDB) {
console.log("Hfin > HfinDB =>" + Hfin +">" +HfinDB);
$(':input[type="submit"]').prop('disabled', true);
}
控制台日志中的:
Hfin > HfinDB => 140 > 1330
140不是>到1330并且javascript返回true:s
由于
答案 0 :(得分:0)
您可以使用函数parseInt()将字符串转换为整数。
如文档中所述,函数parseInt将返回获得的left-substring的整数值,其中切割字符串,其中找到第一个非数字字符(实际上空格也被忽略,符号+和 - 当然是有效的)。
例如:
parseInt("100wrong") == 100;
parseInt("222any") == 222;
parseInt(" 100") == 100;
parseInt(" 100lll") == 100;
parseInt("-100") == -100;
parseInt("wrong222") == NaN;
如果解析字符串变量Hfin和HfinDB,如果其中一个或两个是" NaN",则比较将返回false;
要修复您的代码使用:
var parsedHfin = parseInt(Hfin);
var parsedHfinDB = parseInt(HfinDB);
if (parsedHfin > parsedHfinDB) {
...
}