/**
* 获取本周、本季度、本月、上月的开端日期、停止日期
*/
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);
}

js获取时间(本周、本季度、本月..)的更多相关文章

  1. js获取时间相关函数

    js获取时间函数 var myDate = new Date; var year = myDate.getFullYear();//获取当前年 var yue = myDate.getMonth()+ ...

  2. js 获取时间 new Date()详细介绍

    javaScript系列:js中获取时间new Date()详细介绍 (2012-03-31 09:54:25) 转载▼ 标签: js时间 new date() 字符类型 转换 分类: study-j ...

  3. JS获取时间(当前-过去-未来)

    /** * 获取时间格式为:1970-01-01 00:00 * @param {参数} params * 属性 类型 默认值 必填 说明 * date Date new Date() 否 Date对 ...

  4. js 获取时间对象代码

    /** * 获取时间对象 */function getDateObj(addDayCount) { var dd = new Date(); dd.setDate(dd.getDate()+addDa ...

  5. js获取时间加多山天和时间戳转换成日期

    function huoqu(){    var data = $("#data").val();//获取的时间    var day = $('#day').val();//往后 ...

  6. js获取时间,循环执行任务,延迟执行任务

    一.获取时间 核心方法创建一个时间对象:new Date() 时间对象相关操作 时间对象.函数名 函数名 功能 getYear() 获取四位数的年份 getMonth() 获取2位数的月数, 这个是从 ...

  7. js获取时间及转化

    有关Javascript的本地时间获取,下面我直接用代码来进行举例吧 let time = new Date(); let month = time.getMonth()+1; //获取的月份0~11 ...

  8. js 获取时间比较全,留备用(zhuan)

    var myDate = new Date(); myDate.getYear();        //获取当前年份(2位) myDate.getFullYear();    //获取完整的年份(4位 ...

  9. JS获取时间日期常用方法

    1 当前时间: new Date() 2 当前周: function getCurrentWeek() { var date = new Date() var beginDate = new Date ...

随机推荐

  1. mui

    MUI + SDK 使用笔记:   MUI是什么:http://ask.dcloud.net.cn/article/91   /* MUI 使用说明: * * 1.每个用到mui的页面都调用下mui. ...

  2. icon font字体图标字库汇总

    最近在研究icon font图标字库,找了一些比较好的在线字库.大都是开源的,而且各有特色! 阿里icon font字库 http://www.iconfont.cn/ 这个是阿里妈妈M2UX的一个i ...

  3. jQuery常规选择器

    //简单选择器$('div').css('color','red'); //元素选择器,返回多个元素$('#box').css('color','red');//id选择器,返回单个元素$('.box ...

  4. JDK JRE 区别

    JDK  包含了编译器,比如让.java编译成.classs文件. JRE =Java Runtime Environment j是一些比如一些split函数需要的包,都在里面,基本的运行环境都在JR ...

  5. Animation & Property Animation 使用

    本篇主要讲Animation 和 Property Animation的使用,最后会讲QQ管家桌面火箭作为例子: 在Android中开发动效有两套框架可以使用,分别为 Animation 和 Prop ...

  6. 用于主题检测的临时日志(ba86b8a0-7ed7-4b0b-bf1f-ce41aa2a5780 - 3bfe001a-32de-4114-a6b4-4005b770f6d7)

    这是一个未删除的临时日志.请手动删除它.(ea9f667f-3be0-45c8-ad82-3acf819d571c - 3bfe001a-32de-4114-a6b4-4005b770f6d7)

  7. linux rdsktop 运程管理 windows

    [root@ok ISO]# yum list |grep rdesktop rdesktop.x86_64 1.7.1-1.el6 base [root@ok ISO]# yum install r ...

  8. mysql-关于Unix时间戳(unix_timestamp)

    unix_timestamp时间戳是自 1970 年 1 月 1 日(00:00:00 GMT)以来的秒数.它也被称为 Unix 时间戳(Unix Timestamp). Unix时间戳(Unix t ...

  9. poj 1019

    懂了 题意是给一串 1 12 123 1234 12345 123456 ....这样的数字问第 i个数字是多少 Sample Input 2 8 3 Sample Output 2 2 #inclu ...

  10. OracleDBConsoleorcl是具体管什么的服务(转)

    这个服务是oracle EM的就是oracle企业管理器这个工具可以通过网页的方式监控数据库,对数据库参数等做修改.里面还有oracle本身对于当前系统内存,SQL,参数等的建议.DBA可以根绝这些建 ...