我想在我的应用程序中处理日期格式的多个条件,并为此使用切换方法。该功能看起来不错,但问题是没有任何从我的病例情况不起作用。我了解情况有问题,但不明白究竟是什么。切换方法只返回默认值
有人能告诉我我的错误在哪里吗?
var dateSettings = function (value) {
var timezone = localStorage.getItem('timezone');
timezone = JSON.parse(timezone);
var timeFormat = localStorage.getItem('timeFormat');
timeFormat = JSON.parse(timeFormat);
var dateFormat = localStorage.getItem('dateFormat');
dateFormat = JSON.parse(dateFormat);
switch(value) {
case (timezone === true && timeFormat === true && dateFormat === false):
return value = moment.utc(value).format('MMM dd, yyyy HH:mm');
case (timezone === true && timeFormat === false && dateFormat === false):
return value = moment.utc(value).format('MMM dd, yyyy HH:mm:ss');
case (timezone === false && timeFormat === false && dateFormat === false):
return value = moment(value).format('MMM dd, yyyy HH:mm:ss');
case (timezone === false && timeFormat === false && dateFormat === true):
return value = moment(value).format('YYYY-MM-DD HH:mm:ss');
case (timezone === false && timeFormat === true && dateFormat === true):
return value = moment(value).format('YYYY-MM-DD HH:mm');
case (timezone === true && timeFormat === false && dateFormat === true):
return value = moment.utc(value).format('YYYY-MM-DD HH:mm:ss');
default:
return value = moment.utc(value).format('YYYY-MM-DD HH:mm');
}
};
,则不应使用开关的情况下这样的....如果你将不得不检查,使用if/else if/else .... – epascarello