我需要删除答案的小数位,
IE: 17.5(我知道我可以使用toFixed()将这个带到18,但这不是我想要的)
我希望答案是“17”
目前我能做到这一点的唯一方法是执行以下操作(转换为字符串等等):
Num = 17.5;
Nums = Num.toString();
Numc = Nums.substring(0,2)
Numn = Number(Numc); //Displays 17
这允许我在我的Javascript中使用17作为总和。
我只是想知道是否有一种更简单的方法来实现这一点,而不是使用我当前的方法?类似于toFixed()的东西,但只是将它舍入到较低的选项?哈哈
答案 0 :(得分:2)
您可以将Math.floor用于正数(不确定您想要的是否定数字) :
var d = Math.floor(17.5);
答案 1 :(得分:1)
var toInteger = function(num) {
return num >= 0 ? Math.floor(num) : Math.ceil(num);
}
toInteger(12.3); // returns 12
toInteger(-12.3); // returns -12
答案 2 :(得分:0)
您实际上可以使用toFixed(0)
来完成此操作
1234.5678.toFixed(0);
虽然Math.floor
更快
http://jsperf.com/math-floor-vs-tofixed。我在测试中包含了aga的功能