js获取时间(本周、本季度、本月..)


Posted in Javascript onNovember 22, 2013

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); 
}
Javascript 相关文章推荐
js调试工具 Javascript Debug Toolkit 2.0.0版本发布
Dec 02 Javascript
Javascript MVC框架Backbone.js详解
Sep 18 Javascript
JavaScript使用pop方法移除数组最后一个元素用法实例
Apr 06 Javascript
关注jquery技巧提高jquery技能(前端开发必学)
Nov 02 Javascript
基于JS实现二维码图片固定在右下角某处并跟随滚动条滚动
Feb 08 Javascript
jquery对象与DOM对象转化
Feb 08 Javascript
jquery dataTable 获取某行数据
May 05 jQuery
Node.js应用设置安全的沙箱环境
Apr 23 Javascript
vue点击input弹出带搜索键盘并监听该元素的方法
Aug 25 Javascript
Vue.js上传图片到阿里云OSS存储的方法示例
Dec 13 Javascript
vue-router重定向和路由别名的使用讲解
Jan 19 Javascript
vue项目引入ts步骤(小结)
Oct 31 Javascript
文本框只能选择数据到文本框禁止手动输入
Nov 22 #Javascript
JS测试显示屏分辨率以及屏幕尺寸的方法
Nov 22 #Javascript
jQuery 事件的命名空间简单了解
Nov 22 #Javascript
Firefox中通过JavaScript复制数据到剪贴板(Copy to Clipboard 跨浏览器版)
Nov 22 #Javascript
IE8的JavaScript点击事件(onclick)不兼容的解决方法
Nov 22 #Javascript
用正则表达式替换图片地址img标签
Nov 22 #Javascript
jQuery插件jQuery-JSONP开发ajax调用使用注意事项
Nov 22 #Javascript
You might like
PHP 出现乱码和Sessions验证问题的解决方法!
2008/12/06 PHP
一周让你学会PHP 不错的学习资料
2009/02/06 PHP
php xml实例 留言本
2009/03/20 PHP
PHP容易被忽略而出错陷阱 数字与字符串比较
2011/11/10 PHP
Thinkphp连表查询及数据导出方法示例
2016/10/15 PHP
yii2简单使用less代替css示例
2017/03/10 PHP
js 可拖动列表实现代码
2011/12/13 Javascript
转换字符串为json对象的方法详解
2013/11/29 Javascript
JavaScript不使用prototype和new实现继承机制
2014/12/29 Javascript
Jquery操作Ajax方法小结
2015/11/29 Javascript
深入理解JavaScript中的浮点数
2016/05/18 Javascript
微信小程序  checkbox组件详解及简单实例
2017/01/10 Javascript
jQuery EasyUI Panel面板组件使用详解
2017/02/28 Javascript
微信分享调用jssdk实例
2017/06/08 Javascript
原生js实现简单的模态框示例
2017/09/08 Javascript
详解开发react应用最好用的脚手架 create-react-app
2018/04/24 Javascript
Angularjs中的$apply及优化使用详解
2018/07/02 Javascript
VUE 实现动态给对象增加属性,并触发视图更新操作示例
2019/11/29 Javascript
vue中上传视频或图片或图片和文字一起到后端的解决方法
2019/12/01 Javascript
[34:08]2018DOTA2亚洲邀请赛3月29日 小组赛B组 VP VS EG
2018/03/30 DOTA
Python 机器学习库 NumPy入门教程
2018/04/19 Python
pandas 使用apply同时处理两列数据的方法
2018/04/20 Python
python读写LMDB文件的方法
2018/07/02 Python
PyQt5图形界面播放音乐的实例
2019/06/17 Python
pytorch 实现在预训练模型的 input上增减通道
2020/01/06 Python
新手入门学习python Numpy基础操作
2020/03/02 Python
pycharm 复制代码出现空格的解决方式
2021/01/15 Python
SkinCeuticals官网:美国药妆品牌
2018/04/19 全球购物
吉力贝官方网站:Jelly Belly
2019/03/11 全球购物
个人简历自我鉴定
2013/10/11 职场文书
自荐信模版
2013/10/24 职场文书
物业管理个人自我评价
2013/11/08 职场文书
互联网创业计划书的书写步骤
2014/01/28 职场文书
2015年父亲节活动总结
2015/02/12 职场文书
2015小学教师年度工作总结
2015/05/12 职场文书
详解CSS伪元素的妙用单标签之美
2021/05/25 HTML / CSS