文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

JavaScript中将字符串转换为数字的七种方法总结

2024-04-02 19:55

关注

1. 使用 parseInt()

parseInt()解析一个字符串并返回一个整数。允许空格。仅返回第一个数字。

这种方法虽然有一个限制。如果您解析十进制数,它将四舍五入到最接近的整数值,并将该值转换为string。可能需要使用parseFloat()方法进行文字转换。

myString = '129' 
console.log(parseInt(myString)) // expected result: 129
 
a = 12.22
console.log(parseInt(a)) // expected result: 12

2. 使用 Number()

Number()可用于将 JavaScript 变量转换为数字。我们可以用它来转换字符串太数字。

如果该值不能转换为数字,NaN则返回。

Number("10"); // returns 10Number(" 10 "); // returns 10Number("10.33"); // returns 10.33

3. 使用一元运算符 (+)

一元加号运算符 ( +) 在其操作数之前并计算其操作数,但如果尚未将其转换为数字,则尝试将其转换为数字。

const x = 25;
const y = -25;
console.log(+x); // expected output: 25
console.log(+y); // expected output: -25
console.log(+''); // expected output: 0

4.使用parseFloat()

parseFloat()解析一个字符串并返回一个数字。允许空格。仅返回第一个数字。

parseFloat("10");        // returns 10
parseFloat("10.33");     // returns 10.33
parseFloat("10 20 30");  // returns 10
parseFloat("10 years");  // returns 10
parseFloat("years 10");  // returns NaN

5. 使用 Math.floor()

Math.floor()函数返回小于或等于给定数字的最大整数。这对于十进制数字可能有点棘手,因为它将最接近的整数的值返回为Number。

str = '1222'
console.log(Math.floor(str)) // returns 1222
 
a = 12.22
Math.floor(a) // expected result: 12

6.乘以数字

将字符串值乘以1不会改变值,并且默认情况下它会转换为数字。

str = '2344'
console.log(str * 1) // expected result: 2344

7. 双波浪号 (~~) 运算符

我们可以使用双波浪号运算符将字符串转换为数字。

str = '1234'
console.log(~~str) // expected result: 1234
negStr = '-234'
console.log(~~negStr) // expected result: -234

这是性能方面提到的方式的比较。

补充:js 强制转换 为数字类型


 
var a = "123";
 
//调用Number()函数来将a转换为Number类型
a = Number(a);
 
a = false;
a = Number(a);
 
a = null;
a = Number(a);
 
a = undefined;
a = Number(a);
 
a = "123567a567px";
//调用parseInt()函数将a转换为Number

a = parseInt(a);
 

a = "123.456.789px";
a = parseFloat(a);
 

a = true;
a = parseInt(a);
 
a = 198.23;
a = parseInt(a);
 
console.log(typeof a);
console.log(a);
 

 
//十六进制
a = 0x10;
a = 0xff;
a = 0xCafe;
 
//八进制数字
a = 070;
 
//二进制数字
//a = 0b10;
 
//向"070"这种字符串,有些浏览器会当成8进制解析,有些会当成10进制解析
a = "070";
 
//可以在parseInt()中传递一个第二个参数,来指定数字的进制
a = parseInt(a,10);
 
console.log(typeof a);
console.log(a);

总结

到此这篇关于JavaScript中将字符串转换为数字的七种方法的文章就介绍到这了,更多相关js字符串转换为数字内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     801人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     348人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     311人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     432人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     220人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-前端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯