好吧我知道这可能很容易,但我正在挣扎......我有一系列带小数点和几个零的变量。如何剥离变量使其从1.000变为1?不要认为这很重要,但数字是从xml文件中生成的,我用jquery抓住了...
var quantity = $("QTY",this).text();
提前感谢您的帮助!
答案 0 :(得分:60)
简单......
Math.round(quantity);
...假设您要将1.7
舍入到2
。如果没有,请使用Math.floor
1.7
至1
。
答案 1 :(得分:28)
使用parseInt();
parseInt("1.25");//returns 1
parseInt("1.85");//returns 1
parseInt(1.25);//returns 1
parseInt(1.85);//returns 1
答案 2 :(得分:15)
使用number = ~~number
这是Math.floor()
答案 3 :(得分:10)
parseInt是最慢的方法 math.floor是第二慢的方法
此处未列出的更快的方法是:
var myInt = 1.85 | 0; myInt = 1;
var myInt = 1.85>> 0; myInt = 1;
在这里完成速度测试: http://jsperf.com/math-floor-vs-math-round-vs-parseint/2
答案 4 :(得分:5)
使用Math.trunc() 它完全符合你的要求。它会删除小数
答案 5 :(得分:1)
答案 6 :(得分:1)
为了将数字四舍五入到最接近的整数,您可以使用Math.round()
,如下所示:
Math.round("1.000"); // Will produce 1
Math.round(123.4234); // Will produce 123
答案 7 :(得分:0)
这是另一个很好的例子:
我经常使用Math.round
和 toLocateString
将包含小数位的数字转换为更易读的字符串,并带有千位分隔符:
var myNumberAsString = "1234567.890123" // "1234567.890123"
var myNumber = Math.round(0.0 + myNumberAsString); // 1234568
return myNumber.toLocaleString(); // "1,234,568"
我在从JSON Web服务加载十进制值时发现这很有用,并且需要在网页上以更友好的格式显示它们(当然,我不需要显示所有的小数位。)
答案 8 :(得分:0)
更快,更有效的方法是使用JavaScript的bitwise operators,如下所示:
|
0s
(OR运算符)会将数字视为 32位(二进制1s
和video {
width: 100%;
z-index: 1;
position: fixed;
}
),然后根据需要返回所需的结果在操作数上,在这种情况下会导致整数剥离所有小数位。
答案 9 :(得分:0)
我建议您使用一种叫做Math.trunc()
的东西...将您的数字放在括号中。我不建议您使用Math.round()
的原因是,它可能会更改十进制数字的整数部分,尽管您知道要获取{最接近的整数。