前端导入表格时间格式为什么转成数字类型?

箴水技术分享 . 发布于 2023-05-27 16:07:16 . 阅读 115

项目场景

1,execle导入表格获取日期失败

导入表格失败


原因分析

1,excel内时间格式若为’2019/09/14’、则导入程序内会转义为整数。

解决方案

1,定义计算时间数字的规则 formatDate

function formatDate(numb, format="-") {
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)
}

内容总结

1,将方法带入 formatDate(46155);

2,兼容导入方法可以监听获取到的日期参数是否为数字类型;