js的使用往往伴随着格式带来的问题。下面这篇文章主要介绍JavaScript中把字符串转换成数字的七种方法,通过示例代码非常详细的介绍。有需要的朋友可以参考一下。
:
目录
1.使用parseInt()2。使用数字()3。使用一元运算符()4。使用parseFloat()5。使用Math.floor()6。乘以数字7。双颚化符(~ ~)运算符补充:js强制转换为数字类型摘要
1. 使用 parseInt()
ParseInt()解析一个字符串并返回一个整数。允许空格。只返回第一个数字。
尽管这种方法有局限性。如果您解析一个十进制数,它将被舍入到最接近的整数值,并且该值将被转换为字符串。您可能需要使用parseFloat()方法进行文本转换。
myString='129 '
console . log(parse int(myString))//预期结果:129
a=12.22
console.log(parseInt(a)) //预期结果:12
2. 使用 Number()
Number()可用于将JavaScript变量转换为数字。我们可以用它把字符串转换成太多的数字。
如果该值不能转换为数字,NaN将返回。
数字(“10”);//返回10 number(' 10 ');//返回10 number(' 10.33 ');//返回10.33
3. 使用一元运算符 (+)
一元加运算符()位于其操作数之前,并计算其操作数,但如果它尚未转换为数字,请尝试将其转换为数字。
const x=25
const y=-25;
console . log(x);//预期输出:25
console . log(y);//预期输出:-25
console . log(“”);//预期输出:0
4.使用parseFloat()
ParseFloat()解析一个字符串并返回一个数字。允许空格。只返回第一个数字。
parse float(' 10 ');//返回10
parse float(' 10.33 ');//返回10.33
parse float(' 10 20 30 ');//返回10
parseFloat('10年');//返回10
parse float(' 10年');//返回NaN
5. 使用 Math.floor()
这个Math.floor()函数返回小于或等于给定数字的最大整数。这个十进制数可能有点棘手,因为它以Number的形式返回最接近的整数的值。
str='1222 '
console.log(Math.floor(str)) //返回1222
a=12.22
Math.floor(a) //预期结果:12
6.乘以数字
将字符串值乘以1不会改变该值,默认情况下,它会转换为数字。
str='2344 '
console.log(str * 1) //预期结果:2344
7. 双波浪号 (~~) 运算符
我们可以使用双波浪号运算符将字符串转换为数字。
str='1234 '
console.log(~~str) //预期结果:1234
negStr='-234 '
console.log(~~negStr) //预期结果:-234
这是在性能方面对提到的方法的比较。
补充:js 强制转换 为数字类型
/*
*将其他数据类型转换为数字
*转换模式1:
*使用Number()函数
*-字符串编号
* 1.如果是一串纯数字,直接转换成数字。
* 2.如果字符串中有非数字的内容,它将被转换为NaN。
* 3.如果字符串是空字符串或充满空格的字符串,则转换为0。
*-布尔数字
* true为1
*假为0
*
*-null -数字0
*
*-未定义的数字NaN
*
*转换模式2:
*-这种方式专门用于处理字符串
*-parseInt()将字符串转换为整数
*-parseFloat()将字符串转换为浮点数
*/
var a=' 123
//调用Number()函数将转换为数字类型
a=数字(a);
a=假;
a=数字(a);
a=空;
a=数字(a);
a=未定义;
a=数字(a);
a=' 123567a567px
//调用parseInt()函数将a转换为数字
/*
* parseInt()可以得到字符串中有效的整数内容,
*然后转换成数字
*/
a=parse int(a);
/*
* parseFloat()类似于parseInt(),只是它可以获得有效的小数。
*/
a=' 123 . 456 . 789 px ';
a=parse float(a);
/*
*如果对非字符串使用parseInt()或parseFloat()
*它将首先把它转换成字符串,然后在
*/
a=真;
a=parse int(a);
a=198.23
a=parse int(a);
console . log(a的类型);
console . log(a);
/*
*在js中,如果需要表示十六进制数,需要以0x开头。
*如果需要表示一个八进制数,需要从0开始。
*如果要表示二进制数,需要以0b开头
*但并不是所有浏览器都支持。
*
*/
//十六进制
a=0x10
a=0xff
a=0xCafe
//八进制数字
a=070
//二进制数字
//a=0b 10;
//对于‘070’这样的字符串,有的浏览器会当作八进制,有的会当作十进制。
a=' 070
//您可以在parseInt()中传递第二个参数来指定数字的十进制系统
a=parseInt(a,10);
console . log(a的类型);
console . log(a);
总结
关于在JavaScript中将字符串转换成数字的七种方法的文章到此结束。有关将js字符串转换成数字的更多信息,请搜索我们以前的文章或继续浏览下面的相关文章。希望你以后能支持我们!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。