如何在JavaScript中将字符串转换为整数? [英] How to convert a string to an integer in JavaScript?
问题描述
如何在JavaScript中将字符串转换为整数?
How do I convert a string to 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:
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屋!