/**
* 获取本周、本季度、本月、上月的开始日期、结束日期
*/
var now = new Date(); //当前日期
var nowDayOfWeek = now.getDay(); //今天本周的第几天
var nowDay = now.getDate(); //当前日
var nowMonth = now.getMonth(); //当前月
var nowYear = now.getYear(); //当前年
nowYear += (nowYear < 2000) ? 1900 : 0; //
var lastMonthDate = new Date(); //上月日期
lastMonthDate.setDate(1);
lastMonthDate.setMonth(lastMonthDate.getMonth()-1);
var lastYear = lastMonthDate.getYear();
var lastMonth = lastMonthDate.getMonth();
//格式化日期:yyyy-MM-dd
function formatDate(date) {
var myyear = date.getFullYear();
var mymonth = date.getMonth()+1;
var myweekday = date.getDate();
if(mymonth < 10){
mymonth = "0" + mymonth;
}
if(myweekday < 10){
myweekday = "0" + myweekday;
}
return (myyear+"-"+mymonth + "-" + myweekday);
}
//获得某月的天数
function getMonthDays(myMonth){
var monthStartDate = new Date(nowYear, myMonth, 1);
var monthEndDate = new Date(nowYear, myMonth + 1, 1);
var days = (monthEndDate - monthStartDate)/(1000 * 60 * 60 * 24);
return days;
}
//获得本季度的开始月份
function getQuarterStartMonth(){
var quarterStartMonth = 0;
if(nowMonth<3){
quarterStartMonth = 0;
}
if(2<nowMonth && nowMonth<6){
quarterStartMonth = 3;
}
if(5<nowMonth && nowMonth<9){
quarterStartMonth = 6;
}
if(nowMonth>8){
quarterStartMonth = 9;
}
return quarterStartMonth;
}
//获得本周的开始日期
function getWeekStartDate() {
var weekStartDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek);
return formatDate(weekStartDate);
}
//获得本周的结束日期
function getWeekEndDate() {
var weekEndDate = new Date(nowYear, nowMonth, nowDay + (6 - nowDayOfWeek));
return formatDate(weekEndDate);
}
//获得本月的开始日期
function getMonthStartDate(){
var monthStartDate = new Date(nowYear, nowMonth, 1);
return formatDate(monthStartDate);
}
//获得本月的结束日期
function getMonthEndDate(){
var monthEndDate = new Date(nowYear, nowMonth, getMonthDays(nowMonth));
return formatDate(monthEndDate);
}
//获得上月开始时间
function getLastMonthStartDate(){
var lastMonthStartDate = new Date(nowYear, lastMonth, 1);
return formatDate(lastMonthStartDate);
}
//获得上月结束时间
function getLastMonthEndDate(){
var lastMonthEndDate = new Date(nowYear, lastMonth, getMonthDays(lastMonth));
return formatDate(lastMonthEndDate);
}
//获得本季度的开始日期
function getQuarterStartDate(){
var quarterStartDate = new Date(nowYear, getQuarterStartMonth(), 1);
return formatDate(quarterStartDate);
}
//或的本季度的结束日期
function getQuarterEndDate(){
var quarterEndMonth = getQuarterStartMonth() + 2;
var quarterStartDate = new Date(nowYear, quarterEndMonth, getMonthDays(quarterEndMonth));
return formatDate(quarterStartDate);
}
分享到:
相关推荐
在PHP编程中,获取特定时间范围的日期是常见的需求,比如获取本周、上周、本月、上月以及本季度的日期范围。这些功能可以帮助开发者在处理数据统计、报表生成或者时间相关的业务逻辑时更加便捷。下面将详细介绍如何...
在JavaScript中,获取特定时间范围(如本周、上周、本月、上月、本季度、上季度)的开始和结束日期是常见的需求。以下是一个详细解释这些功能的实现方法: 首先,我们创建一个`Date`对象`now`来获取当前日期和时间...
本文将深入探讨如何使用C#中的DateTime类来获取当前时间,并基于此计算本周、本月、本季度以及月初、月末等各个时间段的具体日期。这对于进行时间序列数据分析、报表生成、日程安排等多种场景都具有重要的应用价值。...
java获取本月的开始时间\结束时间、获取上月的开始时间\结束时间、获取本年的开始时间\结束时间、获取某个日期的开始时间\结束时间、获取今年是哪一年、获取本月是哪一月
Java 获取上月、一个月最后一天、周一、周日、本月日期是 Java 日期处理中的一些常见操作。下面我们将详细介绍这些操作的实现方法。 一、获取上月 获取上月可以使用 Calendar 类的 add 方法,减去一个月份。然后...
此外,这个方法也可以扩展到其他类似的需求,比如获取上周、本月、上月、本季度的日期,甚至计算一段日期内的周末天数等。通过结合不同的日期运算和条件判断,我们可以构建更复杂的日期处理逻辑。 总之,PHP提供了...
Javascript获取上月、下月 var arr = date.split('-'); var year = arr[0]; //获取当前日期的年份 var month = arr[1]; //获取当前日期的月份 //var day = arr[2]; //获取当前日期的日 //var days = new Date...
select dbo.GetDateStartFirstAndLast('-q','s','2022-08-03',0) 返:2022-04-01 00:00:00.000 上季度开始时间0点 select dbo.GetDateStartFirstAndLast('-q','e','2022-08-03',8) 返:2022-07-01 07:59:59.997 上...
本文将介绍如何使用JavaScript获取特定时间单位(如本周、本季度、本月、上月)的开始和结束日期。 首先,我们需要了解JavaScript中Date对象的基本概念。Date对象用于处理日期和时间,它提供了很多方法来获取和设置...
SQL 语句查询本周记录、本月记录、本季度记录、本年记录是数据库查询中常见的操作。本文将为您提供 MySQL 和 SQL Server 两种数据库管理系统的查询语句,帮助您快速实现这些查询操作。 查询本周记录 MySQL 中,您...
4. 日期计算:在代码中,我们可以看到日期计算的实现,例如获取上个月的25号、本月的24号、本月的1号、本月的最后一天等。这些日期计算可以帮助我们实现业务逻辑中的日期处理。 5. 日期比较:在代码中,我们可以...
本文将详细介绍如何使用C#中的`DateTime`类来获取本周、本月、本年以及本周第一天的具体日期,并通过代码示例加以说明。 #### 二、核心概念与函数介绍 1. **`DateTime.Now`**: - 获取当前系统时间。 2. **`...
在JavaScript编程中,获取特定时间范围的日期是一个常见的需求,比如获取今天、昨天、本周、上周、本月和上月的时间。以下将详细解释如何通过JavaScript实现这些功能。 1. 获取今天: ```javascript var nowDate = ...
获取本周 上周 本月 上月 本季度的日期!供大家参考!
java获取今天、昨天、近一周、近两周、近三周、近一月、近两月、近三月、近半年、本周、上周、本月、上月时间段
当前日期减一天 ;今天本周的第几天 ;获得某月的天数 ;获得本季度的开始月份;...获得本季度的开始日期;获得本季度的结束日期;获取指定日期的上个月的日期;再也不为日期的昨天,上月,季度担心了
以上代码展示了如何利用Python的`datetime`模块来获取本周、上周、本月、上月和本季的开始和结束日期。这些功能在日常编程任务中非常实用,尤其是处理时间相关的数据时。理解并熟练运用这些方法,可以提高你的代码...