JS日期加减,日期运算代码


Posted in Javascript onNovember 05, 2015

一、日期减去天数等于第二个日期

function cc(dd,dadd){
//可以加上错误处理
var a = new Date(dd)
a = a.valueOf()
a = a - dadd * 24 * 60 * 60 * 1000
a = new Date(a)
alert(a.getFullYear() + "年" + (a.getMonth() + 1) + "月" + a.getDate() + "日")
}
cc("12/23/2002",2)

这里不得不做补充,浪费好多时间得出教训:
Javascript 对时间的代号
0-11数字表示1-12月: var a= new Date(2006,5,6) 结果是2006-6-6
0-6表示星期
1-31表示日期
0-23小时
0-59分钟,秒

二。//两个日期的差值(d1 - d2).

function DateDiff(d1,d2){
  var day = 24 * 60 * 60 *1000;
try{  
    var dateArr = d1.split("-");
  var checkDate = new Date();
    checkDate.setFullYear(dateArr[0], dateArr[1]-1, dateArr[2]);
  var checkTime = checkDate.getTime();
 
  var dateArr2 = d2.split("-");
  var checkDate2 = new Date();
    checkDate2.setFullYear(dateArr2[0], dateArr2[1]-1, dateArr2[2]);
  var checkTime2 = checkDate2.getTime();
  
  var cha = (checkTime - checkTime2)/day; 
    return cha;
  }catch(e){
  return false;
}
}//end fun

三、应用:

<script language="javascript" type="text/javascript">
var flag = Array();//全局变量

var start = "2009-01-01";
var end = "2009-02-24";
SetFlag(start,end); 

for(var i=0; i<flag.length; i++){
  document.write(flag[i]+"\n\r");
}

//设置周期内的日期(数组)
function SetFlag(start,end){
var cdate = Array();
cdate = start.split("-");
var cd = cdate[1]+"/"+cdate[2]+"/"+cdate[0]; 
var dayNum = DateDiff(end,start);
for(var i=0; i<=dayNum; i++){
  flag.push(AddDays(cd,i));
}
}//end fun
//日期加上天数后的新日期.
function AddDays(date,days){
var nd = new Date(date);
  nd = nd.valueOf();
  nd = nd + days * 24 * 60 * 60 * 1000;
  nd = new Date(nd);
  //alert(nd.getFullYear() + "年" + (nd.getMonth() + 1) + "月" + nd.getDate() + "日");
var y = nd.getFullYear();
var m = nd.getMonth()+1;
var d = nd.getDate();
if(m <= 9) m = "0"+m;
if(d <= 9) d = "0"+d; 
var cdate = y+"-"+m+"-"+d;
return cdate;
}
//两个日期的差值(d1 - d2).
function DateDiff(d1,d2){
  var day = 24 * 60 * 60 *1000;
try{  
    var dateArr = d1.split("-");
  var checkDate = new Date();
    checkDate.setFullYear(dateArr[0], dateArr[1]-1, dateArr[2]);
  var checkTime = checkDate.getTime();
 
  var dateArr2 = d2.split("-");
  var checkDate2 = new Date();
    checkDate2.setFullYear(dateArr2[0], dateArr2[1]-1, dateArr2[2]);
  var checkTime2 = checkDate2.getTime();
  
  var cha = (checkTime - checkTime2)/day; 
    return cha;
  }catch(e){
  return false;
}
}//end fun
</script>
Javascript 相关文章推荐
window.open()弹出居中的窗口
Feb 01 Javascript
firefox事件处理之自动查找event的函数(用于onclick=foo())
Aug 05 Javascript
jQuery中Dom的基本操作小结
Jan 23 Javascript
用jQuery与JSONP轻松解决跨域访问的问题
Feb 04 Javascript
基于Javascript实现二级联动菜单效果
Mar 04 Javascript
使用three.js 画渐变的直线
Jun 05 Javascript
Vue 中的受控与非受控组件的实现
Dec 17 Javascript
JavaScript文本特效实例小结【3个示例】
Dec 22 Javascript
vue中获取滚动table的可视页面宽度调整表头与列对齐(每列宽度不都相同)
Aug 17 Javascript
Javascript如何递归遍历本地文件夹
Aug 06 Javascript
uni-app 自定义底部导航栏的实现
Dec 11 Javascript
vue使用vue-quill-editor富文本编辑器且将图片上传到服务器的功能
Jan 13 Vue.js
程序员必知35个jQuery 代码片段
Nov 05 #Javascript
js如何实现淡入淡出效果
Nov 18 #Javascript
JavaScript数组去重的五种方法
Nov 05 #Javascript
javascript实现tab切换的两个实例
Nov 05 #Javascript
Javascript中的return作用及javascript return关键字用法详解
Nov 05 #Javascript
js实现选中页面文字将其分享到新浪微博
Nov 05 #Javascript
使用JQuery实现的分页插件分享
Nov 05 #Javascript
You might like
PHP中上传大体积文件时需要的设置
2006/10/09 PHP
一个简单的自动发送邮件系统(三)
2006/10/09 PHP
php a simple smtp class
2007/11/26 PHP
libmysql.dll与php.ini是否真的要拷贝到c:\windows目录下呢
2010/03/15 PHP
php自定义hash函数实例
2015/05/05 PHP
关于__defineGetter__ 和__defineSetter__的说明
2007/05/12 Javascript
一个javascript参数的小问题
2008/03/02 Javascript
封装了一个js图片轮换效果的函数
2011/09/28 Javascript
深入理解JavaScript系列(6) 强大的原型和原型链
2012/01/15 Javascript
从数据结构的角度分析 for each in 比 for in 快的多
2013/07/07 Javascript
有关JavaScript中call()和apply() 的一些理解
2016/05/20 Javascript
基于JS实现回到页面顶部的五种写法(从实现到增强)
2016/09/03 Javascript
jquery 删除节点 添加节点 找兄弟节点的简单实现
2016/12/07 Javascript
jQuery实现ajax无刷新分页页码控件
2017/02/28 Javascript
详谈Angular路由与Nodejs路由的区别
2017/03/05 NodeJs
python自动化工具日志查询分析脚本代码实现
2013/11/26 Python
python字典基本操作实例分析
2015/07/11 Python
深入解析Python中的集合类型操作符
2015/08/19 Python
python嵌套函数使用外部函数变量的方法(Python2和Python3)
2016/01/31 Python
Python动态导入模块的方法实例分析
2018/06/28 Python
Python 运行.py文件和交互式运行代码的区别详解
2019/07/02 Python
python openpyxl使用方法详解
2019/07/18 Python
PyTorch的SoftMax交叉熵损失和梯度用法
2020/01/15 Python
解决pyCharm中 module 调用失败的问题
2020/02/12 Python
Django认证系统user对象实现过程解析
2020/03/02 Python
荷兰男士时尚网上商店:Suitable
2017/12/25 全球购物
伦敦剧院及景点门票:Encore Tickets
2018/07/01 全球购物
美国最大的船只买卖在线市场:Boat Trader
2018/08/04 全球购物
掌上明珠Java程序员面试总结
2016/02/23 面试题
国贸专业个人求职信分享
2013/12/04 职场文书
迅雷Cued工作心得体会
2014/01/27 职场文书
微信营销策划方案
2014/02/24 职场文书
家长写给孩子的评语
2014/04/18 职场文书
同学毕业留言寄语
2015/02/27 职场文书
2015年幼儿园学前班工作总结
2015/05/18 职场文书
win11怎么消除图标小盾牌?win11消除图标小盾牌解决方法
2022/08/05 数码科技