js获取时间(本周、本季度、本月..)
/**
* 获取本周、本季度、本月、上月的开端日期、停止日期
*/
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获取时间(本周、本季度、本月..)的更多相关文章
- js获取时间相关函数
js获取时间函数 var myDate = new Date; var year = myDate.getFullYear();//获取当前年 var yue = myDate.getMonth()+ ...
- js 获取时间 new Date()详细介绍
javaScript系列:js中获取时间new Date()详细介绍 (2012-03-31 09:54:25) 转载▼ 标签: js时间 new date() 字符类型 转换 分类: study-j ...
- JS获取时间(当前-过去-未来)
/** * 获取时间格式为:1970-01-01 00:00 * @param {参数} params * 属性 类型 默认值 必填 说明 * date Date new Date() 否 Date对 ...
- js 获取时间对象代码
/** * 获取时间对象 */function getDateObj(addDayCount) { var dd = new Date(); dd.setDate(dd.getDate()+addDa ...
- js获取时间加多山天和时间戳转换成日期
function huoqu(){ var data = $("#data").val();//获取的时间 var day = $('#day').val();//往后 ...
- js获取时间,循环执行任务,延迟执行任务
一.获取时间 核心方法创建一个时间对象:new Date() 时间对象相关操作 时间对象.函数名 函数名 功能 getYear() 获取四位数的年份 getMonth() 获取2位数的月数, 这个是从 ...
- js获取时间及转化
有关Javascript的本地时间获取,下面我直接用代码来进行举例吧 let time = new Date(); let month = time.getMonth()+1; //获取的月份0~11 ...
- js 获取时间比较全,留备用(zhuan)
var myDate = new Date(); myDate.getYear(); //获取当前年份(2位) myDate.getFullYear(); //获取完整的年份(4位 ...
- JS获取时间日期常用方法
1 当前时间: new Date() 2 当前周: function getCurrentWeek() { var date = new Date() var beginDate = new Date ...
随机推荐
- XML Parser Error on line 1: 前言中不允许有内容, Mybatis 生成代码
使用用notepad++打开xml文件,然后在菜单“格式”中选择“以UTF-8无BOM格式编码”,保存.
- [Android Pro] Android签名与认证详细分析之一(CERT.RSA剖析)
转载自:http://www.thinksaas.cn/group/topic/335450/ 一.Android签名概述 我们已经知道的是:Android对每一个Apk文件都会进行签名,在Apk文件 ...
- Linux vim 底下显示行号
使用 vim /etc/vimrc 然后进入之后再 set ruler" show the cursor position all the time 底下再加上 set nu 保存退出 :w ...
- Android之Intent深入
Android中的意图包含多种用法,本文主要包括以下内容 显式意图 隐匿意图 要求结果回传的意图 显式意图 :必须指定要激活的组件的完整包名和类名 (应用程序之间耦合在一起) 一般激活自己应用的组件的 ...
- linux 禁止ping
[root@86 sysconfig]# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all #关闭ping [root@86 sysconfig] ...
- IBM V7000
IBM_V7000 http://www.tuicool.com/articles/7vI7ja http://www.ibm.com/support/knowledgecenter/en/ST3FR ...
- Vim插件安装
一.常用的插件 sudo apt-get install vim vim-scripts vim-docsudo apt-get install ctagssudo apt-get install v ...
- Java Hour 33 Weather ( 6 )
有句名言,叫做10000小时成为某一个领域的专家.姑且不辩论这句话是否正确,让我们到达10000小时的时候再回头来看吧. Hour 33 CURD 之 Create 首先是Eclipse 排序的功能找 ...
- 翻阅《数据结构与算法javascript描述》--数组篇
导读: 这篇文章比较长,介绍了数组常见的操作方法以及一些注意事项,最后还有几道经典的练习题(面试题). 数组的定义: JavaScript 中的数组是一种特殊的对象,用来表示偏移量的索引是该对象的属性 ...
- Android中动画
两种动画 view动画 属性动画 (也可以使用xml描述动画) view 4动画 补间动画 渐变 AlphaAnimation 缩放 ScaleAnimation 平移 TranslateAnima ...