Use JavaScript to take the float type decimal point two, example 22.127456 to take 22.13, how to do?
1. Discard the fractional part, preserving the whole number of parts
parseint (5/2)
2. Rounding up, with decimals on the integer part plus 1
Math.ceil (5/2)
3, rounded.
Math.Round (5/2)
4, rounding down
Math.floor (5/2)
Alternative approach
1. The stupidest Way
function Get ()
{
var s = 22.127456 + "";
var str = s.substring (0,s.indexof (".") + 3);
alert (str);
}
2. Regular expression effect is good
<script type= "Text/javascript" >
onload = function () {
var a = "23.456322";
var anew;
var re =/([0-9]+.[ 0-9]{2}) [0-9]*/;
anew = A.replace (Re, "$");
alert (anew);
}
</script>
3. He is more clever ...
<script>
var num=22.127456;
Alert (Math.Round (num*100)/100);
</script>
4. Friends who will use new things .... But we need ie5.5+ to support it.
5.js Reserved 2 decimal places (mandatory)
For the number of decimal places greater than 2 bits, with the above function is not a problem, but if less than 2 bits, such as: Changetwodecimal (3.1), will return 3.1, if you must need 3.10 such a format, then you need the following function:
function Changetwodecimal_f (x) {
var f_x = parsefloat (x);
if (IsNaN (f_x)) {
Alert (' Function:changetwodecimal->parameter error ');
return false;
}
var f_x = math.round (x * 100)/100;
var s_x = f_x.tostring ();
var pos_decimal = S_x.indexof ('. ');
if (Pos_decimal < 0) {
Pos_decimal = S_x.length;
S_x + = '. ';
}
while (s_x.length <= Pos_decimal + 2) {
s_x + = ' 0 ';
}
return s_x;
}
Function: Rounding the floating-point number, take 2 digits after the decimal point, if less than 2 bit 0,
This function returns the format usage of the string: Changetwodecimal (3.1415926) returns 3.14 Changetwodecimal (3.1) returns 3.10
JS takes the two-digit number of decimal places in float type