例如,我想比较 0-91 和 0-93 ,在我使用的逻辑中,0-93 比 0-91 大,因为我只查看 0- 之后的数字,即 91和 93 。基本上我正在构建一个表格,它检查数字范围,但在表格中,数字可以输入例如 91 和 93 ,但它们通常输入为 0-91 和 0-93 ,我怎么能编写javascript逻辑,以便在比较两个数字时忽略0-?
基本上将 0-91 和 0-93 转换为整数 91 和 93 ,然后比较它们。
例如,我想比较 0-91 和 0-93 ,在我使用的逻辑中,0-93 比 0-91 大,因为我只查看 0- 之后的数字,即 91和 93 。基本上我正在构建一个表格,它检查数字范围,但在表格中,数字可以输入例如 91 和 93 ,但它们通常输入为 0-91 和 0-93 ,我怎么能编写javascript逻辑,以便在比较两个数字时忽略0-?
基本上将 0-91 和 0-93 转换为整数 91 和 93 ,然后比较它们。
一种方法是:
var a = '0-91',
b = '0-93',
max = Math.max(a.slice(2), b.slice(2)), // for example
max2 = Math.max(a.substr(-2), b.substr(-2)); // will work if a = "91" and b = "93"
希望这可以帮助
如果您想要支持:
这是解决它的一种方法:
function numberFromInput(value) {
return Number(value.match(/[-]?(\d*)$/).pop());
}
Math.max(numberFromInput("91"), numberFromInput("0-93"));