如何在JavaScript中将字符串转换为整数? [英] How do I convert a string into an integer in JavaScript?
问题描述
如何在JavaScript中将字符串
转换为整数
?
How do I convert a string
into an integer
in JavaScript?
推荐答案
最简单的方法是使用原生 Number
函数:
The simplest way would be to use the native Number
function:
var x = Number("1000")
如果这对您不起作用,那么 parseInt ,一元加, parseFloat与楼层和 Math.round 方法。
If that doesn't work for you, then there are the parseInt, unary plus, parseFloat with floor, and Math.round methods.
parseInt:
var x = parseInt("1000", 10); // you want to use radix 10
// so you get a decimal number even with a leading 0 and an old browser ([IE8, Firefox 20, Chrome 22 and older][1])
如果您的字符串已经是整数形式,那么一元加上
:
unary plus if your string is already in the form of an integer:
var x = +"1000";
如果您的字符串是或者可能是浮点数并且您想要一个整数:
if your string is or might be a float and you want an integer:
var x = Math.floor("1000.01"); //floor automatically converts string to number
或者,如果您将要使用Math.floor好几次:
or, if you're going to be using Math.floor several times:
var floor = Math.floor;
var x = floor("1000.01");
如果您是在调用parseInt时忘记放入基数的类型,则可以使用parseFloat然后围绕它你喜欢。我在这里使用楼层。
If you're the type who forgets to put the radix in when you call parseInt, you can use parseFloat and round it however you like. Here I use floor.
var floor = Math.floor;
var x = floor(parseFloat("1000.01"));
有趣的是,Math.round(如Math.floor)会进行字符串到数字转换,所以如果你想要数字四舍五入(或者如果你在字符串中有一个整数),这是一个很好的方式,也许是我的最爱:
Interestingly, Math.round (like Math.floor) will do a string to number conversion, so if you want the number rounded (or if you have an integer in the string), this is a great way, maybe my favorite:
var round = Math.round;
var x = round("1000"); //equivalent to round("1000",0)
这篇关于如何在JavaScript中将字符串转换为整数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!