在javascript中获取一周的前一天和第二天
Get the previous and next days of the week in javascript
我有这段代码,获取当前日期,然后获取一周中的天数。有时这个代码不工作,比如今天是08/15,我会得到08/13。我还需要有一个函数得到一周的前一天和第二天。
var self = this;
var curr = new Date;
self.mult = 0;
self.firstDate = new Date;
self.lastDate = new Date;
var first = curr.getDate() - (curr.getDay()-1);
var last = first + 6;
self.firstDate(Utils.dateFormat(new Date(curr.setDate(first)),"%Y-%m-%d", true));
self.lastDate(Utils.dateFormat(new Date(curr.setDate(last)),"%Y-%m-%d", true));
这是查看一周前几天的函数,
var self= this;
var curr = new Date;
self.mult(self.mult()-7);
var first = curr.getDate() - (curr.getDay()-1) + self.mult();
var last = first + 5;
if(self.mult() <= 0){
last = last + 1;
}
self.firstDate(Utils.dateFormat(new Date(curr.setDate(first)),"%Y-%m-%d", true));
self.lastDate(Utils.dateFormat(new Date(curr.setDate(last)),"%Y-%m-%d", true));
这是查看一周接下来几天的函数,
var self= this;
var curr = new Date;
self.mult(self.mult()+7);
var first = curr.getDate() - (curr.getDay()-1) + self.mult();
var last = first + 5;
self.firstDate(Utils.dateFormat(new Date(curr.setDate(first)),"%Y-%m-%d", true));
self.lastDate(Utils.dateFormat(new Date(curr.setDate(last)),"%Y-%m-%d", true));
我不确定,但我想只有前几天的问题。
下面是一个示例情况。
场景1:用户访问页面,今天是09/15那么第一个日期必须是09/12,最后一个日期必须是09/18用户单击下一步,那么第一个日期必须是09/19,最后一个日期是09/25用户再次单击下一步,那么第一个日期是09/26,最后一个日期是10/02用户点击上一步,那么firstDate必须是09/19,lastDate必须是09/25
场景2:用户访问页面,今天是09/15那么第一个日期必须是09/12,最后一个日期必须是09/18如果用户单击上一个,那么第一个日期必须是09/5,最后一个日期必须是09/11用户再次单击上一步,那么第一个日期必须是08/29,最后一个日期是09/4用户点击下一步,那么第一个日期必须是09/5,最后一个日期是09/11
有人能回答一个代码,可以做我的场景?
我建议使用库来完成这样的任务。例如moment.js.
从现在开始的一周
moment(new Date()).startOf('isoWeek').format('MMMM Do YYYY, h:mm:ss ')
从现在起一周结束
moment(new Date()).endOf('isoWeek').format('MMMM Do YYYY, h:mm:ss ')
详情请参阅:http://momentjs.com/
您可以使用setDate()
var a = new Date();
console.log(a)
//Thu Sep 15 2016 10:22:25 GMT+0200 (CEST)
a.setDate(a.getDate()+1);
console.log(a)
//Fri Sep 16 2016 10:22:25 GMT+0200 (CEST)
相关文章:
- 使用默认js函数的javascript中的日期的第二天
- jQuery UI 日期选择器 - 禁用公共假期、周末、第二天上午 10 点之后,只允许周二、周三和周四作为可选日期
- 如何通过 moment() 判断第二天是第二天
- 日期选择器,第二个日期是从第一个日期算起的X天
- Javascript下一天和前一天函数
- 如何提前一天设置第二个日期选择器
- 代码点火器下拉顺序,第一个下拉列表中选择的值musn'第二天中午
- Angularjs下一天和前一天,年,月
- 显示当前关闭时间/第二天开放时间的倒计时
- 使用getDay()显示第二天
- 如何找到第二天使用javascript
- 在javascript中获取一周的前一天和第二天
- 如何验证日期输入设置它总是2天的当前一天使用javascript或jquery
- 使用JQuery通过时间差想知道第二次是同一天还是另一天
- 如何制作";结账日期";第二天自动填充";入住日期";使用pickadate.j
- 使用javascript验证表单,我有开始和结束日期选择器,它应该只允许当前日期和有效时间,而不允许第二天
- JavaScript,获取第二天的日期
- j查询日历日期范围最小第二个日历的日期 +5 天
- 这是怎么回事?一天没问题,第二天就“未定义”
- 在javascript中最接近第二天和时间