<script>
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; //
//格式化日期: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);
//格式化日期:yyyy-MM-dd HH:MM:SS
var myHour = date.getHours();
var myMinute = date.getMinutes();
var mySecond = date.getSeconds();
if(myHour < 10){
myHour = "0" + myHour;
}
if(myMinute < 10){
myMinute = "0" + myMinute;
}
if(mySecond < 10){
mySecond = "0" + mySecond;
}
return (myyear+"-"+mymonth + "-" + myweekday+" "+myHour+":"+myMinute+":"+mySecond);
}
//获得某月的天数
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;
}
//获得本天(i=0)的开始时间
function getDayStartDate(i) {
var nowStartDay = new Date(nowYear, nowMonth, nowDay+i);
return formatDate(nowStartDay);
}
//获得本天(i=0)的结束时间
function getDayEndDate(i) {
var nowStartDay = new Date(nowYear, nowMonth, nowDay+i,23,59,59);
return formatDate(nowStartDay);
}
//获得本周(i=0)的开始日期
function getWeekStartDate(i) {
//var weekStartDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek);
var weekStartDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek+7*i);
return formatDate(weekStartDate);
}
//获得本周的结束日期
function getWeekEndDate(i) {
// var weekEndDate = new Date(nowYear, nowMonth, nowDay + (6 - nowDayOfWeek));
var weekEndDate = new Date(nowYear, nowMonth, nowDay + (6 - nowDayOfWeek)+7*i,23,59,59);
return formatDate(weekEndDate);
}
//获得本月的开始日期
function getMonthStartDate(i){
//var monthStartDate = new Date(nowYear, nowMonth, 1);
var monthStartDate = new Date(nowYear, nowMonth+i, 1);
return formatDate(monthStartDate);
}
//获得本月的结束日期
function getMonthEndDate(i){
//var monthEndDate = new Date(nowYear, nowMonth, getMonthDays(nowMonth));
var monthEndDate = new Date(nowYear, nowMonth+i, getMonthDays(nowMonth+i,),23,59,59);
return formatDate(monthEndDate);
}
//获得本季度的开始日期
function getQuarterStartDate(i){
//var quarterStartDate = new Date(nowYear, getQuarterStartMonth(), 1);
var quarterStartDate = new Date(nowYear, getQuarterStartMonth()+3*i, 1);
return formatDate(quarterStartDate);
}
//或的本季度的结束日期
function getQuarterEndDate(i){
var quarterEndMonth = getQuarterStartMonth()+3*i + 2;
//var quarterStartDate = new Date(nowYear, quarterEndMonth, getMonthDays(quarterEndMonth));
var quarterStartDate = new Date(nowYear, quarterEndMonth, getMonthDays(quarterEndMonth),23,59,59);
return formatDate(quarterStartDate);
}
//获得本年度的开始日期
function getYearStartDate(i){
var quarterStartDate = new Date(nowYear+i, 0, 1);
return formatDate(quarterStartDate);
}
//获得本年度的结束日期
function getYearEndDate(i){
var quarterStartDate = new Date(nowYear+i, 11, getMonthDays(11),23,59,59);
return formatDate(quarterStartDate);
}
alert(getMonthStartDate(1));
</script>
分享到:
相关推荐
在JavaScript中,获取特定时间范围(如本周、上周、本月、上月、本季度、上季度)的开始和结束日期是常见的需求。以下是一个详细解释这些功能的实现方法: 首先,我们创建一个`Date`对象`now`来获取当前日期和时间...
本篇文档主要介绍了一个Java程序,该程序的功能是根据用户输入的日期,计算出该日期所处的季度。这是一个典型的日期处理场景,在各种业务系统中非常常见,比如财务报表、数据分析等。 #### 二、关键概念与术语解释 ...
本文将介绍如何使用JavaScript获取特定时间单位(如本周、本季度、本月、上月)的开始和结束日期。 首先,我们需要了解JavaScript中Date对象的基本概念。Date对象用于处理日期和时间,它提供了很多方法来获取和设置...
而为了将时间限制从开始时间上移除,可以通过设置结束时间的开始日期为1970年1月1日(一个非常早的日期),或者设置一个非常晚的日期如2286年作为结束时间的开始日期,这样就可以将时间约束移除。 在清除时间的实现...
总的来说,“Calender按季度选择日期”是一个实用的JavaScript编程实践,它涉及到日期处理、DOM操作和用户交互等多个前端开发的关键技能。通过深入学习和理解这个案例,开发者可以增强自己的JavaScript实战能力,...
本项目“可选择起始日期和结束日期的时间选择器”是一个JavaScript特效实现,适用于网页应用程序,允许用户指定一个时间段,如旅行日期、预约日期等。这种交互方式能够提升用户体验,简化用户输入操作。 标签“JS...
【季度js插件(基于My97DatePicker)】是一款针对日期选择功能进行二次开发的JavaScript插件,它在原生的My97DatePicker基础上进行了扩展,以满足用户更具体的需求,特别是针对季度选择的场景。My97DatePicker是一款...
在这个JavaScript示例中,我们为开始和结束日期的`datepicker`添加了`onSelect`事件处理器,确保结束日期始终大于或等于开始日期。 在实际应用中,我们还需要考虑用户界面的友好性和异常处理,比如当用户尝试输入...
- **日期处理函数**:用于计算和验证日期、月份、年份和季度的合法性,例如,确保选取的日期范围正确,没有超出设定的边界。 - **可定制性**:插件应提供配置选项,允许开发者自定义显示格式、颜色主题、语言等。 - ...
JavaScript(简称JS)是一种轻量级的脚本语言,广泛应用于网页和网络应用开发,包括处理用户交互、操作DOM(文档对象模型)、以及处理时间与日期等任务。在Web开发中,日期控件是常见的需求,它允许用户方便地选择...
2. **JavaScript和jQuery基础**:这个插件基于JavaScript(可能包括jQuery库)编写,利用JavaScript强大的DOM操作和事件处理能力,实现了动态的日期和时间选择效果。jQuery简化了跨浏览器的DOM操作,使得代码更加...
这里,`v-model`绑定了开始日期和结束日期,通过`startChange`和`endChange`方法处理两个日期选择的变化,确保开始日期不晚于结束日期。 在实际开发中,我们还可能需要处理日期格式化、日期计算、日期合法性验证等...
`js移动端日期时间选择控件` 是一种常见的交互元素,它允许用户方便地选取日期和时间,提高用户体验。在JavaScript(特别是原生JS)中,我们可以创建自定义的日期时间选择器,或者利用现有的开源库来实现这一功能。 ...
本文将详细讲解如何根据给定的标题和描述,利用Java编程语言来判断当前日期是否在本月的最后一周内,以及如何判断日期是否在某一周内的最后几天、前几天或24小时内。 首先,我们需要引入Java的`java.time`包,这个...
JavaScript时间日期输入框是一种常见的网页交互元素,它允许用户在网页上方便地选择或输入日期和时间。在网页开发中,这种功能通常通过JavaScript库或者插件实现,以提高用户体验和增强界面的交互性。本篇文章将深入...
本篇将详细介绍如何仅使用JavaScript来实现日期之间的大小比较功能,并通过具体的代码示例来帮助理解。 #### 1. 基础概念 在JavaScript中,`Date`对象是处理日期和时间的标准方式。可以通过构造函数创建一个`Date`...
这个`Date`对象提供了丰富的API,例如`getFullYear()`获取四位数的年份,`getMonth()`获取月份(注意,JavaScript中的月份是从0开始的),`getDate()`获取月份中的日期,`getHours()`、`getMinutes()`和`getSeconds...
- **start** 和 **end** 分别表示开始日期和结束日期的字符串,格式为 `"年-月-日"`(如:"2023-08-01")。 #### 代码实现分析 1. **字符串分割与日期对象创建** - 使用 `split('-')` 方法将传入的日期字符串按 ...
在本“JS时间日期源码集锦”中,我们将会探讨JavaScript处理时间日期的各种方法和技巧,以及如何创建炫酷的时间日期相关特效。 一、JavaScript中的日期对象 在JavaScript中,Date对象是内置的构造函数,可以用来...
本教程将深入探讨如何使用jQuery和JavaScript来创建一个日期多选控件。 一、日期选择器基础 在JavaScript中,我们经常使用内置的Date对象来处理日期。Date对象允许我们创建、格式化和比较日期。例如,创建一个新...