繁体   English   中英

删除小数位-javascript

[英]Dropping decimal places - javascript

我需要删除答案的小数位,

IE:17.5(我知道我可以使用toFixed()将它带到18,但这不是我想要的)

我希望答案是“ 17”

我目前唯一的方法是执行以下操作(转换为字符串等):

Num = 17.5;                  
Nums = Num.toString();
Numc = Nums.substring(0,2)
Numn = Number(Numc); //Displays 17

然后,这使我可以将17用作我的Javascript中的总和。

我只是想知道是否有比使用当前方法更简单的方法来完成此操作? 类似于toFixed(),但仅将其四舍五入到较低的选项吗? 哈哈

您可以将Math.floor用于正数(不确定负数的含义):

var d = Math.floor(17.5);
var toInteger = function(num) {
    return num >= 0 ? Math.floor(num) : Math.ceil(num);
}

toInteger(12.3); // returns 12
toInteger(-12.3); // returns -12

您实际上可以使用toFixed(0)完成此操作

1234.5678.toFixed(0);

虽然Math.floor更快http://jsperf.com/math-floor-vs-tofixed 我在测试中包含了aga的功能

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM