解决时间(date)类型序列化为数字(number)类型的问题

在mysql库中保存的date类型,取出来传给前端的时意外发现date时间类型转换成了数字类型。

网上有把@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")放在date类型的参数上解决的方法,但是我这里取出来的是封装好的list,故该方法不适用。

自己找了个js方法把序列化成串的数字转成date型:

 //JS转化为json常用日期格式
         function FormatToDate(val) {
             if (val != null) {
                 var date = new Date(val);
                 //月份为0-11,所以+1,月份小于10时补个0
                 var month = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
                 var currentDate = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
                 return date.getFullYear() + "-" + month + "-" + currentDate;
             }
             return "";
         }

在需要取值的地方调用该方法把变成“number”类型的参数放入即可变回date型!!!
在这里插入图片描述

2、获取当前时间后整成数字型(例如:20200912122006)

  let date = new Date();  //当前标准时间格式
    let year = date.getFullYear(); //取得四位数的年份
    let month = date.getMonth() + 1; //返回0~11之间的数字,0代表一月,11代表12月
    let day = date.getDate(); //返回天数,0~31,getDay()返回的是星期几(0~6)
    let hour = date.getHours(); //获取小时
    let minute = date.getMinutes(); //获取分钟
    let second = date.getSeconds(); //获取秒
    let num = year +""+ month +""+ day +""+ hour +""+ minute +""+ second;
    console.log("num==="+num);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值