如果是浮点数,则显示小数位2,如果是int,则显示小数位数0

时间:2015-11-08 08:39:46

标签: javascript decimal

我知道如何做小数2位。

使用toFixed(2);,但问题是列表中的所有数字总是2位小数。

我想如果分数使用小数2位,如果非小数使用小数0位。

number     display
------     -------
1          1
3          3
1.341      1.34
1.345555   1.35
2          2

2 个答案:

答案 0 :(得分:2)

试试这个

function isInt(n) {
       return n % 1 === 0;

    }
    var num=3.00;
    if (isInt(num)){alert(num);}
    else{alert(num.toFixed(2));}

答案 1 :(得分:1)



function show(num) { // test for int is from duplicate question
  return (num % 1 === 0)?num:num.toFixed(2);
}

var nums = [1,3,1.341,1.345555,2],div=document.getElementById("res");
for (var i=0;i<nums.length;i++) {
  res.innerHTML+='<br/>'+show(nums[i]);
}
&#13;
<div id="res"></div>
&#13;
&#13;
&#13;