我有一个货币输入,只需要返回有效数字。输入总是有两位小数,所以:
4.00 -> 4
4.10 -> 4.1
4.01 -> 4.01
这是我目前的做法:
// chop off unnecessary decimals
if (val.charAt(val.length-1) == '0') { // xx.00
val = val.substr(0, val.length-1);
}
if (val.charAt(val.length-1) == '0') { // xx.0
val = val.substr(0, val.length-1);
}
if (val.charAt(val.length-1) == '.') { // xx.
val = val.substr(0, val.length-1);
}
这很有效,并且对它有一定的直接性,我有点喜欢,但也许有更漂亮的方式。
我想我可以使用一个循环并运行它三遍,但实际上,当我对 if 语句进行条件化时,它看起来至少会变得笨重。除此之外,还有什么想法吗?我想也有一种正则表达式的方式来做到这一点......