我在javascript中遇到了一个问题,其中某些日期采用dd / mm / yyyy格式,而其他日期则采用yyyy-dd-mmT00000。我希望它们在dd / mm / yyyy中,但问题是当我运行我的代码时,我调用格式方法,它专门用于" 2018-02-06T00:00:00"等日期。当我得到像02/06/2018这样的日期时,它会运行格式化功能并将其混乱。无论如何,如果(格式化日期){dont format},或者我可以以任何方式更改格式方法,我是否可以作出有条件的说法?
这是格式函数:
formatDate: function (date) {
for (var i = 0; i < date.length; i++) {
var day = date.substring(8);
if (day.charAt(0) == 0) {
day = day.substring(1);
}
var month = date.substring(5, 7);
if (month.charAt(0) == 0) {
month = month.substring(1);
}
var year = date.substring(0, 4);
var finalDateString = month + "/" + day + "/" + year;
}
return finalDateString;
}
这是我用来创建存储信息的表的创建函数的一部分:
if (todos[i].progress != 100) {
todos[i].completed_date = "";
var dateDisplay = todos[i].completed_date;
}
if (todos[i].progress == 100) {
var dateDisplay = todos[i].completed_date;
if (dateDisplay instanceof Date) {
dateDisplay = dateDisplay.toLocaleDateString();
} else {
dateDisplay = dateDisplay.slice(0, 10);
dateDisplay = formatDate(dateDisplay);
}
}