parseint范围(详解js中Number,parseInt和parseFloat的区别)

:暂无数据 2026-10-08 11:50:01 :0

parseint范围(详解js中Number,parseInt和parseFloat的区别)

各位老铁们,大家好,今天由我来为大家分享parseint范围,以及详解js中Number,parseInt和parseFloat的区别的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!

本文目录

详解js中Number,parseInt和parseFloat的区别

Number可以把任何类型的数据转换为数值,parseInt和parseFloat只能把字符串或数值转换为数值;
Number把空字符串转换为0,而parseInt和parseFloat则是转换为NaN;
Number和parseInt会把有效的十六进制格式字符串(例如"0xf")转换为十进制数,而parseFloat会转为0;
Number和parseFloat都会把前面带0的数字字符串(如"0123")转换为十进制的整数或浮点数,而parseInt则按八进制数来转换(除非数字超出八进制的范围,如089);
Number和parseFloat会有效解析浮点数(比如"123.45mn"转为123.45),而parseInt只提取数字字符串中的整数部分(比如"123.45mn"转为123);
parseInt含有第二个参数,用来规定数字转换的进制数(从2到36),比如parseInt("10",12)会按十二进制来解析10,结果就是十进制的12。而Number和parseFloat则没有这个功能。

parseint方法

关于JS的手动类型转换,parseInt是我们最早接触的函数之一。
接下来我们详细的总结一下它的用法,你可以点击收藏,以备不时之需。
parseInt()
作用是将参数(通常为字符串)强制转换为整数。
它有两个参数,第二个可以省略,我们先展示常见的用法
1. 转换规则:依次将字符串中从左到右的数字部分转为整数,一旦转换失败,返回NaN。
(1) 参数是字符串类型:
var a = parseInt(‘10’); //将字符串转成整数类型
console.log(a); // 10
var b = parrseInt(‘10true’); //将有效数字部分转为整数,提取开头数字部分
console.log(b); // 10
var c = parseInt(‘10true20’); //只将开头有效部分转为整数
console.log(c); //10
var d = parseInt(‘045zoo’); //开头部分转为整数,数字前面的0省略
console.log(d); //45
var f = parseInt(‘34.5’); //整数部分,小数点非数字部分,舍去
console.log(f); //34
var g = parseInt(‘a3’); //若不是以数字开头,转为NaN(Not a Number 不是数字)的特殊数值
console.log(g); //NaN
(2) 参数是数字类型:
var a = parseInt(3.4); //依然转为数字,但是取整
console.log(a); //3
(3) 其它数据类型:只要开头不包含有效数字,结果都转为NaN
var a = parseInt(true);
console.log(a); //NaN
var b = parseInt(null);
console.log(b); //NaN
var c = parseInt(undefined);
console.log(c); //NaN
var d = parseInt();
console.log(d); //NaN
var e = parseInt({});
console.log(e); //NaN
接下来,我们看第二个参数的用法
第二个参数:表示进制,范围2~36(用来说明第一个参数的进制规则)
var a = parseInt(‘99’,10); // 如果字符串为十进制内容,该参数可省略
console.log(a); // 99
var a = parseInt(‘1001’,2); // ‘1001’ 符合二进制规则, 转为十进制整数
console.log(a); // 9
var a = parseInt(‘1001’,10); // ‘1001’同样符合十进制, 转为十进制整数
console.log(a); // 1001
var b = parseInt(‘234’,2); //‘234’不符合二进制的规则
console.log(b); // NaN
var b = parseInt(‘abcde’,2); //‘abcde’不符合二进制的规则
console.log(b); // NaN
var c = parseInt(‘1022’,2); //‘10’部分属于二进制,但‘22’不是,将开头有效的部分提取并转成十进制
console.log(c); //2
一些特殊说明
如果以0x或0X开头,即使不说明进制规则,也能识别
var e = parrseInt(‘0xa’); //0x是十六进制的表示方法,a是十六进制中的10,转换成整数后自动切换为十进制
console.log(e); //10
尽量不使用出现e的数字,由于只能识别开头部分,会造成结果混乱
此时应使用parseFloat方法替代

parseInt()返回值

语法:parseInt(string, radix)
string:必需。要被解析的字符串。
radix:可选。表示要解析的数字的基数。该值介于 2 ~ 36 之间。
如果省略该参数或其值为 0,则数字将以 10 为基础来解析;
如果它以 “0x” 或 “0X” 开头,将以 16 为基数;
如果该参数小于 2 或者大于 36,则 parseInt() 将返回 NaN。

parseInt("10"); //返回 10
parseInt("19",10); //返回 19 (10+9)
parseInt("11",2); //返回 3 (2+1)
parseInt("17",8); //返回 15 (8+7)
parseInt("1f",16); //返回 31 (16+15)
parseInt("010"); //未定:返回 10 或 8

1乘以10的一次方+0*10的0次方=10+0=10
……

parseInt("19",37); //返回 NaN 基数不在2-36范围内
parseInt("11",1); //返回 NaN 基数不在2-36范围内
parseInt("92",8); //返回 NaN 9》8 字符串数字不能大于基数

.map(parseInt)输出什么?
.map(parseInt)等同于
.map(function(ele,index){
  return parseInt(ele,index)
})

等于调用了三次parseInt方法:
第一次 parseInt("1",0) //基数为0时,按照上边陈述即为10进制,返回 1
第一次 parseInt("2",1)//基数为1,不在2-36范围内,默认输出NaN
第一次 parseInt("3",2)//基数为2,因为字符串3大于基数不合法,解析为NaN
答案也就是:

OK,关于parseint范围和详解js中Number,parseInt和parseFloat的区别的内容到此结束了,希望对大家有所帮助。

parseint范围(详解js中Number,parseInt和parseFloat的区别)

本文编辑:admin

更多文章:


mariadb忘记密码(mysql用户密码忘记了怎么办)

mariadb忘记密码(mysql用户密码忘记了怎么办)

大家好,mariadb忘记密码相信很多的网友都不是很明白,包括mysql用户密码忘记了怎么办也是一样,不过没有关系,接下来就来为大家分享关于mariadb忘记密码和mysql用户密码忘记了怎么办的一些知识点,大家可以关注收藏,免得下次来找不

2026年10月15日 07:50

mysql端口号(如何查看自己数据库的端口号)

mysql端口号(如何查看自己数据库的端口号)

“mysql端口号”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看mysql端口号(如何查看自己数据库的端口号)!

2026年10月15日 06:30

printf打印16进制(C语言 十六进制怎么输出)

printf打印16进制(C语言 十六进制怎么输出)

大家好,今天小编来为大家解答以下的问题,关于printf打印16进制,C语言 十六进制怎么输出这个很多人还不知道,现在让我们一起来看看吧!

2026年10月15日 06:00

avantage怎么设置为中文(Avantage安装丢失GIT)

avantage怎么设置为中文(Avantage安装丢失GIT)

大家好,如果您还对avantage怎么设置为中文不太了解,没有关系,今天就由本站为大家分享avantage怎么设置为中文的知识,包括Avantage安装丢失GIT的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

2026年10月15日 03:00

ospf协议的作用是什么(OSPF路由协议的作用是什么)

ospf协议的作用是什么(OSPF路由协议的作用是什么)

“ospf协议的作用是什么”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看ospf协议的作用是什么(OSPF路由协议的作用是什么)!

2026年10月15日 02:40

方案对比特效js(在一个网页中如何实现两个JS特效)

方案对比特效js(在一个网页中如何实现两个JS特效)

各位老铁们好,相信很多人对方案对比特效js都不是特别的了解,因此呢,今天就来为大家分享下关于方案对比特效js以及在一个网页中如何实现两个JS特效的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!

2026年10月15日 02:10

activex控件未注册怎么办(登陆视频监控网页时提示activex控件未注册,怎么解决)

activex控件未注册怎么办(登陆视频监控网页时提示activex控件未注册,怎么解决)

今天给各位分享登陆视频监控网页时提示activex控件未注册,怎么解决的知识,其中也会对登陆视频监控网页时提示activex控件未注册,怎么解决进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

2026年10月14日 20:30

学生信息管理系统c语言(用C语言编程学生信息管理系统!)

学生信息管理系统c语言(用C语言编程学生信息管理系统!)

今天给各位分享用C语言编程学生信息管理系统!的知识,其中也会对用C语言编程学生信息管理系统!进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

2026年10月14日 20:20

excel连接sql数据库教程(excel怎么连接sql数据库)

excel连接sql数据库教程(excel怎么连接sql数据库)

本篇文章给大家谈谈excel连接sql数据库教程,以及excel怎么连接sql数据库对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

2026年10月14日 19:40

null s brawl(null和空字符有区别吗)

null s brawl(null和空字符有区别吗)

今天给各位分享null和空字符有区别吗的知识,其中也会对null和空字符有区别吗进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

2026年10月14日 19:00

最近更新

热刺vs马赛比赛(热刺赛程比分)
2026-10-15 09:10:01 浏览:0
热门文章

标签列表