我试图找到我所给予的任何一天的星期一。 它有两个要求。
例如:
1. If given day is Monday through Friday, find the last closest Monday,
so if the given day is 10-31, I need to get 10-27
2. If given day is Saturday or Sunday, find the next Monday.
JavaScript的:
var today = new Date(); //assuming it's 11/1/2014 Saturday
var todayDay = today.getDay(); > 6
if(todayDay == 6) {
var Monday = today.getDate() + 2;
}
我不确定如何动态地找到星期一的日期和时间。我已经查找了javascript day方法,但不确定如何获取它。任何人都可以帮我吗?谢谢!
答案 0 :(得分:2)
所以改写你的要求是:星期天开始一周,在那一周找星期一。
使用moment.js太容易了......
本周的周日
moment().startOf('week')
所以要找周一做
moment().startOf('week').add('days', 1)
修改强>
您可以使用以下时刻功能
更改周开始moment.lang('en-in', {
week : {
dow : 1 // Monday is the first day of the week
}
});
和获取索引的星期几是
daysOfWeek: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],
答案 1 :(得分:1)
javscript的Date对象包含对此有帮助的方法getDay(),setDate()和getDate()。
"use strict";
var d = document.getElementById('d');
var mon = document.getElementById('mon');
var handleDatePick = function(ev){
var the_date = new Date(d.value);
if (the_date.getDay() <= 4) {
the_date.setDate( the_date.getDate() - the_date.getDay() );
} else {
the_date.setDate( the_date.getDate() + 7 - the_date.getDay() );
}
var output = 'the nearest monday is ' + the_date.toUTCString();
mon.value = output;
};
d.addEventListener('input',handleDatePick);
&#13;
input, output {
display: block;
clear: both;
}
&#13;
pick the date: <input type="date" id="d" />
<output id="mon" for="d"></output>
&#13;