我有一个javascript号码12.1542。我想从这个字符串中获取新字符串12.(1542 * 60)。
我怎样才能得到它。 感谢
答案 0 :(得分:22)
您可以使用modulus operator:
var num = 12.1542;
console.log(num % 1);
但是,由于浮点数的性质,您将获得一个非常不同的数字。对于上面的示例,Chrome为我提供了0.15419999999999945
。
另一个(略长)选项是使用Math.floor
然后从原始数字中减去结果:
var num = 12.1542;
console.log(num - Math.floor(num));
同样,由于浮点数的性质,你最终会得到一个与你预期的略有不同的数字。
答案 1 :(得分:1)
答案 2 :(得分:1)
除了输入健全性检查之外,这应该有效:
var str = '12.1542';
var value = Math.floor( str ) + ( 60 * (str - Math.floor( str ) ) );
答案 3 :(得分:1)
小数点时间:
function toDec(sec){
var itg=Math.floor(sec);
sec=(sec-itg)*60;
return itg+sec; // OR: return new String(itg+sec);
}
答案 4 :(得分:0)
let Decimal = "12.56"
Decimal.substring(Decimal.indexOf(".")+1, Decimal .length)
// answer is 56.