js日期计算及快速获取周、月、季度起止日
var now = new Date(); //当前日期
var nowDayOfWeek = (now.getDay() == 0) ? 7 : now.getDay() - 1; //今天是本周的第几天。周一=0,周日=6
var nowDay = now.getDate(); //当前日
var nowMonth = now.getMonth(); //当前月值(1月=0,12月=11)
var nowMonReal = now.getMonth() + 1; //当前月实际数字
var nowYear = now.getFullYear(); //当前年 //日期+天
function AddDays(d, n) {
var t = new Date(d);//复制并操作新对象,避免改动原对象
t.setDate(t.getDate() + n);
return t;
} //日期+月。日对日,若目标月份不存在该日期,则置为最后一日
function AddMonths(d, n) {
var t = new Date(d);
t.setMonth(t.getMonth() + n);
if (t.getDate() != d.getDate()) { t.setDate(0); }
return t;
} //日期+年。月对月日对日,若目标年月不存在该日期,则置为最后一日
function AddYears(d, n) {
var t = new Date(d);
t.setFullYear(t.getFullYear() + n);
if (t.getDate() != d.getDate()) { t.setDate(0); }
return t;
} //获得本季度的开始月份
function getQuarterStartMonth() {
if (nowMonth <= 2) { return 0; }
else if (nowMonth <= 5) { return 3; }
else if (nowMonth <= 8) { return 6; }
else { return 9; }
} //周一
function getWeekStartDate() {
return AddDays(now, -nowDayOfWeek);
} //周日。本周一+6天
function getWeekEndDate() {
return AddDays(getWeekStartDate(), 6);
} //月初
function getMonthStartDate() {
return new Date(nowYear, nowMonth, 1);
} //月末。下月初-1天
function getMonthEndDate() {
return AddDays(AddMonths(getMonthStartDate(), 1), -1);
} //季度初
function getQuarterStartDate() {
return new Date(nowYear, getQuarterStartMonth(), 1);
} //季度末。下季初-1天
function getQuarterEndDate() {
return AddDays(AddMonths(getQuarterStartDate(), 3), -1);
}
js日期计算及快速获取周、月、季度起止日的更多相关文章
- js日期计算及快速获取周、月、季度起止日,获取指定日期周数以及星期几的小例子
JS获取日期时遇到如下需求,根据某年某周获取一周的日期.如开始日期规定为星期四到下一周的星期五为一周. 格式化日期: function getNowFormatDate(theDate) { var ...
- js 日期计算星座 根据生日的月份和日期,一行代码计算星座的js小函数(转)
本博客根据 开源中国作者清风徐不来 的文章 根据生日的月份和日期,一行代码计算星座的js小函数(转) 原文出自CSDN 无心的专栏 的文章,知识产权归原文作者所有! 点击查看原文:js 日期计算星座
- js日期的写法,获取girdviw的行数、提示信息、验证数量信息
//制订日期(js日期的写法) var myDate = new Date(); var theDate = myDate.toLocaleDateString(); //获取今天的日期 //获取控 ...
- js 计算是今天多少周
/** * 判断年份是否为润年 * * @param {Number} year */ function isLeapYear(year) { return (year % 400 == 0) || ...
- java获取当前时间的年周月季度等的开始结束时间
import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * Created b ...
- js日期范围初始化,得到前一个月的日期
今天做时间范围的初始化设定,开始时间是当前时间的前一个月,终于找到完美的解决方案了. Date.prototype.format = function(format) { var o = { ...
- Flex自定义组件开发之日周月日期选择日历控件
原文:Flex自定义组件开发之日周月日期选择日历控件 使用过DateField的我们都知道,DateField 控件是用于显示日期的文本字段,字段右侧带有日历图标.当用户在控件边框内的 ...
- java 和 mysql 获取周 星期 的第一天 最后一天 或者 月的 日期(字符串转日期,日期转字符串,日期加减)
获取周的第一天,最后一天 System.out.println(getStartEndDate("2016-05-01", 1)); 获取星期的第一天和最后一天 System.ou ...
- 用js获取周、月第一天和最后一天(转载)
var getCurrentWeek = function (day) { var days = ["周日", "周一", "周二", &q ...
随机推荐
- 一些JS周边工具
Visual Studio JS 辅助插件 JScript Editor Extensions 功能: 1. 代码块折叠 2. 方法参数智能提示 3. 代码块Outlining ...
- 【LeetCode】102 - Binary Tree Level Order Traversal
Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, ...
- UDP模式与TCP模式的区别
1.TCP有连接状态,而UDP没有. 2.TCP应用层使用无需考虑包的大小及发送情况,而UDP需要. 3.TCP中IP包大小的决定者是Socket,而UDP为应用层.
- 我来说说MVC过滤器
APS.NET MVC中的每一个请求,都会分配给相应的控制器和对应的行为方法去处理,而在这些处理的前前后后如果想再加一些额外的逻辑处理.这时候就用到了过滤器. 在Asp.netMvc中当你有以下及类似 ...
- [POJ] #1006# Biorhythms : 最小公倍数/同余问题
一. 题目 Biorhythms Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 127263 Accepted: 403 ...
- SharePoint咨询师之路:设计之前的那些事一:容量
提示:本系列只是一个学习笔记系列,大部分内容都可以从微软官方网站找到,本人只是按照自己的学习路径来学习和呈现这些知识. 咨询师更多的时候是解决方案提供者,那么他们如何能够提供有效的SharePoint ...
- 转】Mahout分步式程序开发 基于物品的协同过滤ItemCF
原博文出自于: http://blog.fens.me/hadoop-mahout-mapreduce-itemcf/ 感谢! Posted: Oct 14, 2013 Tags: Hadoopite ...
- HDU 1002 分类: ACM 2015-06-18 23:03 9人阅读 评论(0) 收藏
昨天做的那题其实和大整数相加类似.记得当初我大一寒假就卡在这1002题上,结果之后就再也没写题... 到今天终于把大整数相加写了一遍. 不过写的很繁琐,抽时间改进一下写简洁一点. #include&l ...
- SPI移位寄存器
spi移位寄存器即是spi的数据寄存器,在stm32中数据手册是这样描述的:
- PCB板简易流程
PCB布线规则设置 在进行布线之前一般要进行布线规则的设置,(因为元器件的封装已经画出了元件实际的轮廓大小,所以放置元件封装时,即使两个元件封装挨着也一般不会影响元件的实际安装,不过一般还是稍留一点距 ...