2017-03-20 27 views
-2

这是一个在ReactJS代码库中使用的函数。将空数据设置为未定义在函数中?

现在,作为“空”而不是字符串传递给该函数的日期被呈现为1969年12月31日。但是如果日期传递为空,则不应显示日期。

我想修改下面的函数来检查空日期并将这些日期设置为undefined。我应该怎么做?

var formatTheDate = function(dateString, dateFormat) { 
    dateFormat = dateFormat || "MMMM DD YYYY, h:mm a"; 
    return moment.utc(new Date(dateString)).local().format(dateFormat); 
}; 
+2

为什么你想将它们设置为未定义默认的日期?为什么你首先将空日期传递给这个函数? – m0meni

回答

1

只需在尝试使用前检查dateString

var formatTheDate = function(dateString, dateFormat) { 
    dateFormat = dateFormat || "MMMM DD YYYY, h:mm a"; 
    return dateString 
    ? moment.utc(new Date(dateString)).local().format(dateFormat) 
    : undefined; 
}; 
0

就返回未定义或为空或您的选择,如果日期是无效或返回从UNIX时间0

var formatTheDate = function(dateString, dateFormat) { 
    var newDate = new Date(dateString); 
    //optionally return a value instead of undefined here 
    if(newDate == "Invalid Date" || newDate - new Date(null) == 0) return; 
    dateFormat = dateFormat || "MMMM DD YYYY, h:mm a"; 
    return moment.utc(newDate).local().format(dateFormat); 
}; 
相关问题