/**
* 计算两个日期之间相差的天数(带带负数) 支持格式YYYY-mm-dd比较
* @param higDate 减数
* @param lowDate 被减数
* @returns 差值天数 格式不正确返回null
* @dada 2016-09-19 lhh添加备注
*/
function DateDiff(higDate, lowDate) {
//sDate1和sDate2是2006-12-18格式
var aDate, oDate1, oDate2, iDays;
aDate = higDate.split("-");
oDate1 = new Date((aDate[1] + '-' + aDate[2] + '-' + aDate[0]).replace(/-/g, "/"));
//转换为12-18-2006格式
aDate = lowDate.split("-");
oDate2 = new Date((aDate[1] + '-' + aDate[2] + '-' + aDate[0]).replace(/-/g, "/"));
var diff = oDate1 - oDate2;
iDays = parseInt(diff / 1000 / 60 / 60 / 24);
//把相差的毫秒数转换为天数
if (isNaN(iDays)) return null;
return iDays;
}

 

/**
* 日期比较 支持格式YYYY-mm-dd HH:mm:ss比较
* @param Date1 日期1
* @param Date2 日期2
* @returns 差值(为0相等 正值 Date1 大于 Date2 负值相反) 格式不正确返回null
* @dada 2016-09-19 lhh添加备注
*/
function comptime(Date1, Date2) {
var higTimes = Date1.substring(0, 10).split('-');
var lowTimes = Date2.substring(0, 10).split('-');
higTime = higTimes[1] + '-' + higTimes[2] + '-' + higTimes[0] + ' ' + higDate.substring(10, 19);
lowTime = lowTimes[1] + '-' + lowTimes[2] + '-' + lowTimes[0] + ' ' + lowDate.substring(10, 19);
var num = (Date.parse(higTime) - Date.parse(lowTime)) / 3600 / 1000;
if (isNaN(num)) return null;
return num;
}
/**
* 两个日期的比较
* @param strDateStart
* @param strDateEnd
* @returns {Boolean}
*/
function twoDateSize(strDateStart, strDateEnd) {
var strSeparator = "-"; // 日期分隔符
var oDate1;
var oDate2;
var iDays;
oDate1 = strDateStart.split(strSeparator);
oDate2 = strDateEnd.split(strSeparator);
var strDateS = new Date(oDate1[0], oDate1[1] - 1, oDate1[2]);
var strDateE = new Date(oDate2[0], oDate2[1] - 1, oDate2[2]);
//开始大于结束
if (strDateS > strDateE) {
return false;
} else {
return true;
}
}
function getDays(strDateStart, strDateEnd) {
var strSeparator = "-"; // 日期分隔符
var oDate1;
var oDate2;
var iDays;
oDate1 = strDateStart.split(strSeparator);
oDate2 = strDateEnd.split(strSeparator);
var strDateS = new Date(oDate1[0], oDate1[1] - 1, oDate1[2]);
var strDateE = new Date(oDate2[0], oDate2[1] - 1, oDate2[2]);
iDays = parseInt(Math.abs(strDateS - strDateE) / 1000 / 60 / 60 / 24); // 把相差的毫秒数转换为天数
return iDays;
}

  

 

计算两个日期之间相差的天数(带带负数) 支持格式YYYY-mm-dd和YYYY-mm-dd HH:mm:ss的更多相关文章

  1. tp5 计算两个日期之间相差的天数

    //两个日期之间相差的天数 function diffBetweenTwoDays ($day1, $day2) { $second1 = strtotime($day1); $second2 = s ...

  2. C#计算两个日期之间相差的天数

    说明:如:1900-01-01与1900-01-01之间算一天 private static int DateDiff(DateTime dateStart, DateTime dateEnd) { ...

  3. C#中如何获得两个日期之间的天数差 ( c# 计算两个日期之间相差的天数 )

    DateTime dtLast = new DateTime(Convert.ToInt32(LastMenses.Year), Convert.ToInt32(LastMenses.Month), ...

  4. java计算两个日期之间相隔的天数

    import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; impor ...

  5. PHP 求两个日期之间相差的天数、月数

    <?php /** * 求两个日期之间相差的天数 * (针对1970年1月1日之后,求之前可以采用泰勒公式) * @param string $day1 * @param string $day ...

  6. java计算两个日期之间的相隔天数

    [原创] 之前在很多竞赛的题目中有这样饿一类题,计算给定两个日期之间的相隔天数,或者很多类似的题目,都是需要转化到这个问题上时,之前用c++写的时候思想是这样的,一个结构体,包括年月日,还有一个计算下 ...

  7. 计算两个日期之间相差的年数月数天数(JS实现)

    前言 如何计算年龄?我的第一直觉做法:(当前时间戳 - 出生时的时间戳)/ (365*86400)  所得结果向下取整.后来发现这种做法获得的结果不准确,不是多了一岁就是少了一岁,不能简单粗暴的这么处 ...

  8. 自己设计一个日期类,可以输入年月日作为构造时的参数,如果不使用参数,则设定为1900年1月1日;编写一个方法equals判断两个日期是否相等;另一个方法compareTo可以进行日期之间的比较,返回两个日期之间相差的天数.

    import java.util.*; import java.lang.Math; class Date1{ private int year; private int month; private ...

  9. js 计算两个日期之间 相差几年几月几日

    1.计算日期差 Mine.vue <!-- 我的 --> <template> <div> <!-- 标题栏 --> <x-header :lef ...

随机推荐

  1. 暂时放弃ts版个人博客转js版博客

    我本打算信心满满的做个vue+ts做个博客的,其实架构搭的差不多了,但是我在用vuex的时候发现一个自己无法忍受的瑕疵,那就是在用vuex的时候,得利于普通版vuex的map语法糖实在太好用,这把我惯 ...

  2. ERROR in Template execution failed: ReferenceError: htmlwebpackPlugin is not defined

    ejs文件配置如下: <!DOCTYPE html> <html lang="zh-CN"> <head> <title>webpa ...

  3. 前端每日实战:47# 视频演示如何用纯 CSS 创作一个蝴蝶标本展示框

    效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/xzgZzQ 可交互视频教程 此视频 ...

  4. python 的文件编码处理

    python的文件编码处理有点粗鲁 1.不管文件原来是编码类型,读入后都转换成Unicode的编码 2.写入文件时,write函数把变量以读入文件的编码方式写入(根据open(path,mode,en ...

  5. Java double转long方法

    Java double转long方法 double random = Math.round(Math.random()*10000); long l = new Double(random).long ...

  6. Xcode7.1环境下上架iOS App到AppStore 流程③

    前言部分 part三 部分主要讲解 Xcode关联绑定发布证书的配置.创建App信息.使用Application Loader上传.ipa文件到AppStore 一.Xcode配置发布证书信息 1)给 ...

  7. 前端this相关

    前端this相关: <script> //示例一 function func1() { console.log(this); //this代指window } func1(); //win ...

  8. .NET Core 使用 mongodb

    1.运行环境 开发工具:Visual Studio 2017 JDK版本:.NET Core 2.0 项目管理工具:nuget 2.GITHUB地址 https://github.com/nbfujx ...

  9. 在python3.7下怎么安装matplotlib与numpy

    一.安装matplotlib 1.在Matplotlib的官网下载电脑对应的版本,网址为:https://pypi.org/project/matplotlib/#files 2.将在下载的.whl文 ...

  10. 'Error Domain=NSURLErrorDomain Code=-999' AFNetworking请求报错

    早上请求app请求登录接口发现了下面的错误信息: Error Domain=NSURLErrorDomain Code=-999 "已取消" UserInfo={NSErrorFa ...