js计算日期相差的天数
在网站开发中,经常会遇到计算日期相差的天数,js 没有提供相应的方法,所以自己写一个,方便将来查看:
代码:
function DateDiff(sDate1, sDate2, splitStr) { //sDate1和sDate2是2006-12-18格式
var aDate, oDate1, oDate2, iDays;
aDate = sDate1.split(splitStr);
oDate1 = new Date(aDate[1] + splitStr + aDate[2] + splitStr + aDate[0]); //转换为12-18-2006格式
aDate = sDate2.split(splitStr);
oDate2 = new Date(aDate[1] + splitStr + aDate[2] + splitStr + aDate[0]);
iDays = parseInt((oDate1 - oDate2) / 1000 / 60 / 60 / 24); //把相差的毫秒数转换为天数
return iDays;
}
参数解释:
sDate1:结束日期
sDate2: 开始日期
splitStr:日期的分隔符,如(2010-10-10的分隔符为“-”)这里是为了通用各种分隔符的日期格式。
如果要返回天数,而不是要谁大谁小,Math.abs((oDate1 - oDate2))就计算绝对值。
以上就足以计算时间差了,以下是为了让这个更完善。 如果日期没有分隔符(如:20101210),这种情况怎么办呢,只好将其转为有分隔符的日期了,顺带附上转换日期的函数:
function convertDate(date,splitStr)//轉換日期格式
{
var strDate = date;
if(splitStr=="")
{
splitStr="-";//设置默认
} if (checkInt(strDate))
{//判斷是否有分隔符
var s1 = strDate.substring(0, 4) + splitStr;
var s2 = strDate.substring(4, 6) + splitStr;
var s3 = strDate.substring(6, 8);
strDate = s1 + s2 + s3;
//$(element).val(strDate);//如果沒有分隔符,把分隔符插入之後,賦值給文本框,類似於格式化日期
}
return strDate
} //判断是否为整型,在日期格式转换的时候用到
function checkInt(num)
{//验证是否是纯数字,如果是純數字 說明沒有分隔符20141115
var reg = /^-?\d+$/;//对正则表达式不熟,知道的朋友帮忙解释下"-?"的意思
if (reg.test(num))
{
return true;
}
else
{
return false;
}
}
js计算日期相差的天数的更多相关文章
- js计算日期相差天数
日期不能直接相加减比较大小,需要转换一下然后计算最后转换成天,当然,你也可以根据同样类似的方法去转换成小时,或者月,年. function DateDiff(sDate1, sDate2) { //s ...
- js计算日期相减天数
代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> </head ...
- js计算2个日期相差的天数,两个日期相差的天数,日期相隔天数
js计算2个日期相差的天数,两个日期相差的天数,日期相隔天数 >>>>>>>>>>>>>>>>>& ...
- 计算两个日期相差的天数 js php日期 减一年
计算两个日期相差的天数 //sDate1和sDate2是yyyy-MM-dd格式 function dateDiff(sDate1, sDate2) { var aDate, oDate1, oDat ...
- Java函数2:计算两个日期相差的天数
import java.util.Scanner; public class HelloWorld { public static void main(String[] args){ // Scann ...
- JAVA 比较两个日期相差的天数
在实际的应用中,我们经常会比较两个日期相差的天数,下面我们通过java方法判断两个日期所差的额天数. 具体内容,请看下面的代码: package com.jd.jr.fclient.test; imp ...
- Java获得日期相差的天数
文章来源: http://www.jb51.net/article/75551.htm 这篇文章主要介绍了java计算两个时间相差天数的方法,感兴趣的小伙伴们可以参考一下: 问题描述: 输入:两个日期 ...
- Java技巧——比较两个日期相差的天数
Java技巧——比较两个日期相差的天数 摘要:本文主要记录了在Java里面如何判断两个日期相差的天数. 判断两个Date类型的日期之间的天数 通过计算毫秒数判断: public static void ...
- Java 计算两个日期相差的天数
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; impor ...
随机推荐
- Irrlicht学习之光照的研究
Irrlicht学习之光照的研究 最近研究一下Irrlicht的光照.发现Irrlicht的光照还是比较简单的,相比低于它的OpenGL和Direct3D,设置光源以及设置光照的参数更加人性化(可能是 ...
- Python 第十二篇:HTML基础
一:基础知识: HTML是英文Hyper Text Mark-up Language(超文本标记语言)的缩写,他是一种制作万维网页面标准语言(标记).相当于定义统一的一套规则,大家都来遵守他,这样就可 ...
- 【 D3.js 入门系列 — 3 】 做一个简单的图表!
图1. 柱形图 1. 柱形图 前几章的例子,都是对文字进行处理.本章中将用 D3 做一个简单的柱形图.制作柱形图有很多种方法,比如用 HTML 的 <div> 标签,或在 SVG 上绘制 ...
- Firemonkey ListBoxItem自绘
ListBoxItem1的事件ListBoxItem1Paint procedure TForm1.ListBoxItem1Paint(Sender: TObject; Canvas: TCanvas ...
- iOS 本地化应用程序(NSLocalizedString)
App本地化的需要不用讲大家也都明白,本文将介绍一种简单的方法来实现字符串的本地化. 在不考虑本地化的情况下,我们如果在代码中给一个Button定义title,一般会这样写: btn.titleLab ...
- Google Map Android api V2 中使用MapView遇到CameraUpdateFactory is not initialized!的解决办法
先说一下 Map V2 API Key 的问题吧: 在打包APP时需要自己生成一个XXX.keystore 用这个密室库生成的SHA1去申请的key 作为AndroidManifest.xml 中的K ...
- [置顶] hdu3018解题报告--也是白话几笔画学习总结
1.题意 2.分析难点(结合图形) 1.首先说说题意吧...题意很简单...但是一开始很菜的我就很迷惑..在想啊...题目怎么就会有没有连接边的点呢....因为你每次给出一条边..就把 a,b连接啦. ...
- 往Amazon上upload bundle经常中断的处理方法
首先可以按如下脚本进行重复提交 #!/bin/bash ;i<=;i=i+)) do ret1=`bin/ec2-upload-bundle -b myrawbucket -m /ec2-ami ...
- stm32之CAN总线基础
can总线协议概述: CAN是Controller Area Network的缩写,由德国博世公司开发:CAN通过ISO11891以及ISO11519进行了标准化: CAN总线的特点: 1.多 ...
- asp.net上传控件使用
protected void Button1_Click(object sender, EventArgs e) { string str = ""; if (FileUpload ...