查漏补缺——说说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
分类:
查漏补缺
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?