其他分享
首页 > 其他分享> > 查漏补缺——说说parseInt

查漏补缺——说说parseInt

作者:互联网

问题

如题所示

答案

相关源码:

if ((typeof time === 'string')) {
      if ((/^[0-9]+$/.test(time))) {
        // support "1548221490638"
        time = parseInt(time)
      } else {
        time = time.replace(new RegExp(/-/gm), '/')
      }
    }

这里有这样一行代码:

time = parseInt(time)

JavaScript parseInt()的用法

根据上面,这个方法可以解析一个字符串,最后返回一个整数,根据上面的内容做了以下实验:

console.log("将字符串转换为整数:")
console.log(parseInt("123"))
console.log("")
console.log("如果将字符串头部有空格,空格会被自动除去:")
console.log(parseInt(" 81"))
console.log("")
console.log("依次转换,遇到不能转换的字符,停止转换,返回转好的部分:")
console.log(parseInt("99aa"))
console.log("")
console.log("第一个字符不能转换为数字(后面跟着数字的正负号除外),返回NaN:")
console.log(parseInt("aa99"))
console.log(parseInt("-99"))
console.log("")
console.log("如果字符串以0x或0X开头,将其按照十六进制数解析:")
console.log(parseInt("0x10"))
console.log("")
console.log("以0开头,将其按照10进制解析:")
console.log(parseInt("011"))
console.log("")
console.log("以0开头,但不是字符串,会先将数值转成字符串,然后解析:")
console.log(parseInt(011))
console.log("")
console.log("将科学计数法的表示方法视为字符串:")
console.log(parseInt(1000000000000000000000.5))
console.log(parseInt('1e+21'))
console.log(parseInt(0.0000008))
console.log(parseInt('8e-7'))
[Running] node "e:\HMV\JavaScript\JavaScript.js"
将字符串转换为整数:
123

如果将字符串头部有空格,空格会被自动除去:
81

依次转换,遇到不能转换的字符,停止转换,返回转好的部分:
99

第一个字符不能转换为数字(后面跟着数字的正负号除外),返回NaN:
NaN
-99

如果字符串以0x或0X开头,将其按照十六进制数解析:
16

以0开头,将其按照10进制解析:
11

以0开头,但不是字符串,会先将数值转成字符串,然后解析:
9

将科学计数法的表示方法视为字符串:
1
1
8
8

[Done] exited with code=0 in 2.859 seconds

标签:查漏,console,log,time,字符串,补缺,parseInt,转换
来源: https://www.cnblogs.com/Huang-zihan/p/16436759.html