parseInt()-返回10进制的整数或者NaN

举报
搞前端的半夏 发表于 2021/10/24 21:58:09 2021/10/24
【摘要】 原文链接 1. 是什么parseInt(string, radix) 函数解析一个字符串,返回一个10进制的整数或者NaN 1.1 参数 string是一个字符串,例如”123“,‘0xF’, radix介于2-36之间的数,表示string字符串的进制进制,如10进制。其中radix可以省略,默认为10进制。 1.2 举例parseInt('11',2) //"11"这个字符串是2进制的...

原文链接

1. 是什么

parseInt(string, radix) 函数解析一个字符串,返回一个10进制的整数或者NaN

1.1 参数
string
是一个字符串,例如”123“,‘0xF’,
radix
介于2-36之间的数,表示string字符串的进制进制,如10进制。
其中radix可以省略,默认为10进制。
1.2 举例
parseInt('11',2) 
//"11"这个字符串是2进制的返回3

parseInt('11',10)
//"11"这个字符串是10进制的返回11

parseInt('0xF',16)
//"0xF"这个字符串是16进制的返回15

2 注意事项

2.1 如果第一个字符不能被转换成数字,parseInt返回NaN。
parseInt("syl", 8); 
// 根本就不是数值,输出NaN

parseInt("5", 2); 
// 除了“0、1”外,其它数字都不是有效二进制数字,输出NaN
2.2 在基数为 undefined,或者基数为 0 或者没有指定的情况下,JavaScript 作如下处理:
1. 如果字符串 string 以"0x"或者"0X"开头, 则基数是16 (16进制).
2. 如果字符串 string 以"0"开头, 基数是8(八进制)或者10(十进制),
	那么具体是哪个基数由实现环境决定。
	ECMAScript 5 规定使用10,但是并不是所有的浏览器都遵循这个规定。
	因此,永远都要明确给出radix参数的值。
3. 如果字符串 string 以其它任何值开头,则基数是10 (十进制)。
2.3 如果字符串中间不属于radix参数所指定的基数中的字符那么该字符和其后的字符都将被忽略。开头和结尾的空白符允许存在
parseInt("22 3 2019")
//出现空格,忽略,输出22
parseInt(“2.366”)= 2 
//出现.,忽略,输出2
2.4 带有e的字符串请谨慎处理
parseInt("6.022e23", 10);        // 返回 6
parseInt(6.022e2, 10);          // 返回 602
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。