为何前台格式化后台传过来的日期经过转换后为NAN
问题描述
前台接收从后台传过来的日期,在前台格式化是为NAN-NAN-NAN
如下图所示
在这里插入图片描述
前台格式化代码如下
function dateFormatter (value) {
var date = new Date(value);
var year = date.getFullYear().toString();
var month = (date.getMonth() + 1);
var day = date.getDate().toString();
if (month < 10) {
month = "0" + month;
}
if (day < 10) {
day = "0" + day;
}
return year + "-" + month + "-" + day;
}
问题就出在 var date = new Date(value);
我们打断点看看value是什么
可以看到value是一个日期Object,但是我们只需要他的时间戳就行了
因此代码改成var date = new Date(value.time);就行了
function dateFormatter (value) {
var date = new Date(value.time);
var year = date.getFullYear().toString();
var month = (date.getMonth() + 1);
var day = date.getDate().toString();
if (month < 10) {
month = "0" + month;
}
if (day < 10) {
day = "0" + day;
}
return year + "-" + month + "-" + day;
}