var fNum = parseFloat("32.23.45");
结果是 32.23 但我需要最后一个小数点的字符串:23.45
例如,以下字符串应返回以下值:
- "12.234.43.234"-> 43.234,
- "345.234.32.34"-> 32.34 和
- "234.34.34.234w"-> 34.34
最佳答案
一个相当直接的解决方案:
function toFloat(s) {
return parseFloat(s.match(/\d+(\.|$)/g).slice(-2).join('.'));
}
例如:
toFloat("32.23.45") // 23.45
toFloat("12.234.43.234") // 43.234
toFloat("345.234.32.34") // 32.34
toFloat("234.34.34.234w") // 34.34
更新:这是一个替代版本,可以更有效地处理混合了非数字的字符串。
function toFloat(s) {
return parseFloat(s.match(/.*(\.|^)(\d+\.\d+)(\.|$)/)[2]);
}
关于javascript - 如何获得特定的最后一个十进制浮点值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22137807/