现在好多表的日期格式是:2015-11-4 12:19:52 使用的是这段JS
function getLocalTime(value, row, index) {
var a = new Date(value);
return formatDate(a);
}
function formatDate(now) {
var year = now.getFullYear();
var month = now.getMonth() + 1;
var date = now.getDate();
var hour = now.getHours();
var minute = now.getMinutes();
var second = now.getSeconds();
return year + "-" + month + "-" + date;
}
但是今天有张表从数据库中获取到的日期,却显示为NaN-NaN-NaN.
网上问了好多度娘,都没有个正确可行的办法来解决,请问这里的大神,有什么方法可以让我的日期重新回归这个格式:2015-11-4 12:19:52
NaN是Not A Number的意思,你的value看起来是传入了一个字符串,并且不是一个有效的日期字符串
产生这个问题的原因是Date构造函数接受的若干种参数中,如果你传入的是String,会被当成是一个Date.parse方法可以接受处理的符合RFC 2822标准的时间字符串来处理,所以时间戳是不行的
详见 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date
如果只是简单修改,考虑改成这样吧:
楼下的大神的方法也可以,不过我找到更好的方法了。
之所以会造成显示错误,是因为,我传的value,没有值。
var a = new Date(value);
这个value实际上是我要让显示的字段为返回时间的日期,这个返回时间的字段是backTime,只要获取到这个值就会正常显示了。
最后解决的代码显示为:
function getLocalTime(value, row, index) {