在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);