parseInt()

 parseInt(numstring,radix)  parseFloat(numstring,radix)

将字符串转为指定进制数的整数或浮点数,若不能转化为进制数,则返回NAN

  numstring:字符换类型,要转化的数

  radix:进制数默认为十进制(2-36之间),可选

  若没有指定radix:a. 若numstring开头为1-9的数字,取默认情况十进制

                               b. numstring开头为0x,取十六进制

                               c. numstring开头为0,取八进制(ECMA script3,ECMA script5已取消,也为十进制)

  若指定radix:不管指定的数是什么类型,都会将其转化为number,

                         a. 转化之后的数值若为0或NAN,则取默认情况十进制;

                         b. 转化之后位于2-36之间,取对应的进制

                         c. 位于2-36以外,也不是0和NAN,则返回NAN

parseInt("31", 0)
parseInt("31", "aaa")        //"aaa"转化为number是NAN

parseInt("31", 10)
//三种情况31都会转为十进制
parseInt("123")//123
//注意的点:preseInt转化过程是按位来转化直到遇到不能转化的值为止(即不是数字),后面即使有可以转化的数值也不会在进行转化了


pareInt("123ab123")//123
//a为非数字不可进行转换自动舍弃后面所有的值
//若能转换一个都没有则返回NaN
parseInt("abc123")//NaN

parseInt("1.5")//1
//直接舍去小数点后的部分
parseInt("1", 0); // 1 等价于 parseInt("1", 10)
parseInt("1", "aaa"); // 1 等价于 parseInt("1", 10)

parseInt("2", 1); // NaN ,进制解析异常
parseInt('3', 2) //基数为2(2进制)表示的数中,最大值小于3,所以无法解析,返回NaN

parseInt("010"); // 8/10 视环境而定 String("010");// 8/10
parseInt(010); // 8   String(010);// 8

parseInt(0x10); // 16 String(0x10);// 16
parseInt("0x10"); // 16  (String("0x10");// "0x10" ) 等价于 parseInt("0x10", 16)// 16

parseInt(" 23 "); // 23
parseInt(" 23 abc"); // 23
parseInt(" 23abc "); // 23
["1", "2", "3"].map(parseInt); // ["1", NaN, NaN]

其他几种关于小数点进位的函数:

Math.floor(num)        //向下取整
Math.round(num)        //四舍五入
Math.ceil(num)         //向上取整

parseInt(numstring,进制数)        //将数字转化为指定进制的整型字符串,若numstring是小数则直接舍弃小数点后的部分
parseInt(numstring,进制数)         //将数字转化为指定进制的浮点型字符串
//num以0开头,
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值