react + ant Upload前端解析excel文件后时间解析为数字转化回日期格式
方法一:
(这种方法闰年转化后日期会有问题)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | function formatDate(numb, format) { if (numb != undefined) { let time = new Date((numb - 1) * 24 * 3600000 + 1) time.setYear(time.getFullYear() - 70) let year = time.getFullYear() + '' let month = time.getMonth() + 1 + '' let date = time.getDate() + '' if (format && format.length === 1) { return year + format + month + format + date } return year + (month < 10 ? '0' + month : month) + (date < 10 ? '0' + date : date) } else { return undefined; } } |
方法二:
(正确方法)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | function formatDate(serial, format) { var utc_days = Math.floor(serial - 25569); var utc_value = utc_days * 86400; var date_info = new Date(utc_value * 1000); var fractional_day = serial - Math.floor(serial) + 0.0000001; var total_seconds = Math.floor(86400 * fractional_day); var seconds = total_seconds % 60; total_seconds -= seconds; var hours = Math.floor(total_seconds / (60 * 60)); var minutes = Math.floor(total_seconds / 60) % 60; var daytime = new Date(date_info.getFullYear(), date_info.getMonth(), date_info.getDate(), hours, minutes, seconds); var returnDate = date_info.getFullYear(); returnDate += format + (date_info.getMonth() < 9 ? '0' + (date_info.getMonth() + 1) : (date_info.getMonth() + 1)); returnDate += format + (date_info.getDate() < 10 ? '0' + date_info.getDate() : date_info.getDate()); returnDate += " " + (daytime.getHours() < 10 ? '0' + daytime.getHours() : daytime.getHours()); returnDate += ":" + (daytime.getMinutes() < 10 ? '0' + daytime.getMinutes() : daytime.getMinutes()); return returnDate; } |
分类:
react
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了