【发布时间】:2017-08-23 10:03:20
【问题描述】:
我正在使用 Moment.js 生成本周的日期数组。
然后我从系统中获取一个日期数组,现在我想检查这些日期中的任何一个是否与本周创建的 Moment.js 匹配。
如果是,那么我想返回它们的值(0,1,2.. 所以我可以相应地操作 dom 对象。(例如:如果匹配返回本周的星期日和星期二,那么我会突出显示它们)
到目前为止,我只获得了一个硬编码值,以在日期低于当前周时返回 true 或 false。
var REFERENCE = moment();
var startOfWeek = REFERENCE.clone().startOf('week');
var endOfWeek = REFERENCE.clone().endOf('week');
var highlightDays = ['2017-08-23','2017-08-25','2017-08-29']; //highlight respective days ONLY they fall under current week
var days = [];
var day = startOfWeek;
while (day <= endOfWeek) {
days.push(day.toDate());
day = day.clone().add(1, 'd');
}
function isWithinThisWeek(momentDate) {
return momentDate.isBetween(startOfWeek, endOfWeek);
}
console.log("is it within this week? "+isWithinThisWeek(moment("2017-08-25")));
【问题讨论】: