这可能是一个非常简单的问题。但我有一系列看起来像这样的数字:
0.12704174228675136
0.3629764065335753
我想删除前导0.
并仅保留前两个数字,所以这就是结果:
12
36
但我不知道如何围绕数字。通常,我会将其转换为字符串并使用正则表达式。我想我现在也可以这样做,但既然我在这里有数字,我现在也要记住这一点。
答案 0 :(得分:6)
如果它们已经是字符串,那么substr
就会做到这一点:
str.substr(2, 2);
如果他们是数字,您可以乘以Math.floor
:
Math.floor(number * 100);
答案 1 :(得分:2)
最快捷,最简单的方式:
number*100|0;
(|
是按位OR,它会将任何数字转换为整数,因此与Math.floor
的行为相同但更短更快。)
答案 2 :(得分:1)
有两种方法可以做到这一点
Math.floor(number*100);
可能是最正确的,因为你一直在使用数字。
parseInt(number*100, 10);
parseInt应该将一个字符串作为第一个参数,但如果你传递一个数字,javascript将转换为字符串。
(number+"").replace(/\d*\.(\d{2})\d*/, "$1");
或转换为字符串和正则表达式