在javascript中将字符串转换为数字的6种方法

在javascript中,数字可以用两种不同的方式表示,
1。作为实际数字。
2. 作为字符串 。

很多时候,我们需要在javascript中将字符串转换为数字。

我们将看到6种不同的方法可以将字符串转换为数字。

使用 Number() 函数。


将字符串转换为数字的最相关方法是使用方法。Number()

Number("25");   //25
Number("2500"); //2500
Number("25.24"); //25.24
Number("24,000"); //NaN
它负责交因以及十进制或浮动数字。

但是,它不会像您所看到的那样转换带有分隔符的字符串 返回 。如果要使用分隔符转换字符串,请使用 Intl.NumberFormat。

Number("24,000") //NaN

使用 parseInt()


parseInt(string, base)function 将字符串转换为指定基数的整数。

parseInt('25', 10); //25


如果我们不指定,那么它将根据输入使用适当的。因此,对于我们的情况,始终用作基础。

当它将字符串转换为不同的,如果起始字符不是数字,那么它将返回。

parseInt('25 is my age', 10); //25
parseInt('25,000', 10);  // 25
parseInt('My age is 25', 10); //NaN 


如果我们想保留小数部分,那么我们需要使用.parseFloat()

parseInt('25.24'); //25


使用 parseFloat()


parseFloat()函数将字符串转换为浮点数。

parseFloat('25.24'); //25.24
parseFloat('25'); //25


就像它也只会转换拳头匹配的数字一样。它将返回以数字以外的其他字符串开头的字符串。parseInt()NaN

parseFloat(3.14);     //3.14
parseFloat('3.14');   //3.14
parseFloat('314e-2'); //3.14
parseFloat('0.0314E+2');  //3.14
parseFloat('3.14more non-digit characters'); //3.14
parseFloat('31,400');  //31
parseFloat('Age is 25'); //NaN


使用 Math.floor() 将字符串转换为数字


Math.floor()也可以用来将字符串转换为javascript中的数字。它不适用于浮点数,因为它会对数字进行四舍五入。

Math.floor('25');    //25
Math.floor('25.24'); //25
Math.floor('25,000'); //NaN
Math.floor('25abc'); //NaN
Math.floor('abc25'); //NaN


使用一元运算符+加号


可以将运算符追加到字符串之前,以将其转换为整数。请小心使用此功能,因为运算符也用于连接两个或多个字符串。+'abc'+'xyz' = 'abcxyz'

+'25';     //25
+'25.24';  //25.24
+'25,000'; //NaN
+'25abc';  //NaN
+'abc25';  //NaN


将字符串乘以 1,使用* 1


就像 一样,我们也可以将字符串乘以 1,用于将字符串转换为数字。* 1

'25' * 1;     //25
'25.24' * 1;  //25.24
'25,000' * 1; //NaN
'25abc' * 1;  //NaN
'abc25' * 1;  //NaN


它是可用于快速转换的最快方法之一。

猜你喜欢

转载自blog.csdn.net/qq_22182989/article/details/125612684