//date加上num天数之后等到的时间;date格式:YYYY-MM-DD
function dateAddNumDays(date,num)
{
var dates = date.split("-");
if(dates.length!=3)
{
alert("时间格式错误,请确认!");
return ;
}
var year = dates[0];
var month = dates[1];
var day = dates[2];
var newDay = Number(day)+Number(num);
var oldDay = newDay;
while(newDay>28){
if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)
{
if(newDay>31)
{
month = Number(month)+1;
newDay = newDay-31;
}
}else if(month==4||month==6||month==9||month==11)
{
if(newDay>30)
{
month = Number(month)+1;
newDay = newDay-30;
}
}else{
if(isLeapYear(year)==true){
if(newDay>29)
{
month = Number(month)+1;
newDay = newDay-29;
}
}else{
if(newDay>28)
{
month = Number(month)+1;
newDay = newDay-28;
}
}
}
if(month>12)
{
month = month-12;
year = Number(year)+1;
}
if(oldDay == newDay)
{
break;
}
}
if(Number(month)<10)
{
month = "0"+Number(month);
}
if(newDay<10)
{
newDay = "0"+newDay;
}
return year+'-'+month+'-'+newDay;
}
//date减少num天数之后等到的时间;date格式:YYYY-MM-DD
function dateReduceNumDays(date,num)
{
var dates = date.split("-");
if(dates.length!=3)
{
alert("时间格式错误,请确认!");
return ;
}
var year = dates[0];
var month = dates[1];
var day = dates[2];
var newDay = Number(day)-Number(num);
while(newDay<=0)
{
if(month==1||month==2||month==4||month==6||month==8||month==9||month==11)
{
newDay = newDay+31;
month = Number(month)-1;
}else if(month==5||month==7||month==10||month==12)
{
newDay = newDay+30;
month = Number(month)-1;
}else{
if(isLeapYear(year)==true){
newDay = newDay+29;
}else{
newDay = newDay+28;
}
month = Number(month)-1;
}
if(month<=0)
{
month = month+12;
year = Number(year)-1;
}
}
if(Number(month)<10)
{
month = "0"+Number(month);
}
if(newDay<10)
{
newDay = "0"+newDay;
}
return year+'-'+month+'-'+newDay;
}
//判断是否是闰年
function isLeapYear(pYear){
if(!isNaN(pYear)){
if((pYear%4==0 && pYear%100!=0)||(pYear%100==0 && pYear%400==0)){
return true;
}else{
return false;
}
}else{
return false;
}
}
分享到:
相关推荐
javascript的官方文档 这些方便实用的信息将帮助您了解 JScript 的各个部分。 在“字母顺序的关键字列表”中,可以找到按字母顺序列出的所有 JScript 语言的主题。如果只需要查看某个主题(例如对象),则有对该主题...
getTimezoneOffset 方法 返回主机的时间和全球标准时间(UTC)之间的差(以分钟为单位)。 getUTCDate 方法 使用全球标准时间(UTC)返回 Date 对象的日期值。 getUTCDay 方法 使用全球标准时间(UTC)返回 Date ...
同样地,使用`getTime()`方法获取未来时间点距离1970年的毫秒数,然后通过它减去当前时间的毫秒数,得到未来时间距离现在的总毫秒数。 ```javascript var newTime = newDate.getTime(); // 2018年距离1970年的毫秒...
getTimezoneOffset 方法 返回主机的时间和全球标准时间(UTC)之间的差(以分钟为单位)。 getUTCDate 方法 使用全球标准时间(UTC)返回 Date 对象的日期值。 getUTCDay 方法 使用全球标准时间(UTC)返回 Date ...
本文将探讨两种使用JavaScript实现这个功能的方法,一种是传统的for循环,另一种是利用字符串的split方法。 首先,让我们看下传统的for循环方法。这种方法通过将数字转换成二进制字符串,然后遍历每个字符,如果...
在JavaScript中,我们可以使用正则表达式的方法来操作字符串: - `compile` 方法可以编译正则表达式,提高匹配性能。 - `match` 方法用于查找字符串中与正则表达式匹配的部分,并返回一个数组。 - `replace` 方法...
今天,我们将详细介绍 JS 日期加减、日期运算代码的实现方法。 首先,让我们来了解一下日期加减的基本概念。日期加减是指将某个日期加上或减去一定的天数、小时、分钟或秒数,以得到新的日期。例如,我们可以将某个...
本文介绍了如何使用JavaScript实现随机读取数组元素的方法。这一功能的实现主要涉及JavaScript的随机数生成函数以及对数组的操作技巧。 首先,要实现随机读取数组中的元素,基本思路是生成一个随机数,这个随机数的...
momentom提供了丰富的API来操作日期,如添加或减去时间单位,克隆日期对象以避免副作用,以及检查日期是否在某个区间内等。 5. **时区支持** 考虑到全球化的需要,momentom可能包含了对时区的支持,允许用户在...
在JavaScript中,获取鼠标指针的位置是Web开发中常见的需求,尤其在实现交互式功能时。这个过程涉及到几个关键的事件属性以及浏览器兼容性处理。本文将详细解释如何使用JavaScript来获取鼠标的页面位置和相对元素的...
3. **JavaScript判断JSON对象是否含有某个值**: 在JavaScript中,使用`hasOwnProperty`方法可以检查JSON对象是否包含指定的属性。例如,若要判断`json`对象中是否存在`key1`,可以写成: ```javascript if (json....
二叉树的性质中,如果一个二叉树有n个度为2的节点,那么它的叶子节点(度为0的节点)数量是n+1。这是因为二叉树的叶子节点数等于度为2的节点数加1,再减去度为1的节点数。题目中的答案是A。 国标码和内码是汉字编码...