[英]How to check if current date is same as date from list of dates in javascript?
因此,例如,我有 3 个日期:
2020-07-14
2020-07-16
2020-07-15
如果任何日期与当前日期(2020-07-16)匹配,我应该显示当天的值。 这是我写的代码,但每次我重新加载页面时,都会显示其他值:
for (var i = 0; i < response.pen_feeding_scheduler_list.length; i++) {
if (response.pen_feeding_scheduler_list[i].feeding_frequency_rule) {
vm.feed_date_start = response.pen_feeding_scheduler_list[i].start_feeding_date;
var current_date = new Date().toISOString().slice(0, 10);
if (current_date == vm.feed_date_start) {
vm.dateSet = true;
} else if (moment(vm.feed_date_start).isBefore(current_date)) {
vm.dateSet = true;
} else if (moment(vm.feed_date_start).isAfter(current_date)) {
vm.dateSet = false;
}
if (vm.dateSet) {
response.feeding_frequency = getFrequency(response.pen_feeding_scheduler_list[i].feeding_frequency_rule);
}
}
}
简单地:
const dates = ['2020-07-14', '2020-07-16', '2020-07-15']; console.log( dates.includes( new Date().toISOString().slice(0, 10) ) );
我认为您应该以相反的方向处理它,而不是将当前日期格式化为接收日期格式(YYYY-MM-DD),只需将这些日期格式化为时间戳。
const currentDate = new Date(); currentDate.setHours(0) currentDate.setMinutes(-currentDate.getTimezoneOffset()) currentDate.setSeconds(0) currentDate.setMilliseconds(0) const currentTimestamp = currentDate.getTime(); // transforming date into universal timestamp console.log(currentTimestamp === new Date("2020-07-14").getTime()); console.log(currentTimestamp === new Date("2020-07-16").getTime());
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.