查漏补缺——说说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)
根据上面,这个方法可以解析一个字符串,最后返回一个整数,根据上面的内容做了以下实验:
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