私は、アプリケーションで日付形式の複数の条件を処理しようとしています。この関数はうまく見えますが、問題は私のケースの条件からは何も働かないということです。私は状態に何か間違っていることを理解していますが、正確に何が理解できません。switchメソッドはデフォルト値のみを返します
誰かが私のミスがどこにあるのか教えていただけますか?
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