JavaScript自定义DateDiff函数(兼容所有浏览器)_时间日期

复制代码 代码如下:

<script type="text/javascript">
function NewDate(str) {
str = str.split('-');
var date = new Date();
date.setUTCFullYear(str[0], str[1] - 1, str[2]);
date.setUTCHours(0, 0, 0, 0);
return date;
}
function TimeCom(dateValue) {
var newCom;

if (dateValue == "") {
newCom = new Date();
} else {
newCom = NewDate(dateValue);
}
this.year = newCom.getYear();
this.month = newCom.getMonth() + 1;
this.day = newCom.getDate();
this.hour = newCom.getHours();
this.minute = newCom.getMinutes();
this.second = newCom.getSeconds();
this.msecond = newCom.getMilliseconds();
this.week = newCom.getDay();
}
function DateDiff(interval, date1, date2) {
var TimeCom1 = new TimeCom(date1);
var TimeCom2 = new TimeCom(date2);
var result;
switch (String(interval).toLowerCase()) {
case "y":
case "year":
result = TimeCom1.year - TimeCom2.year;
break;
case "m":
case "month":
result = (TimeCom1.year - TimeCom2.year) * 12 + (TimeCom1.month - TimeCom2.month);
break;
case "d":
case "day":
result = Math.round((Date.UTC(TimeCom1.year, TimeCom1.month - 1, TimeCom1.day) - Date.UTC(TimeCom2.year, TimeCom2.month - 1, TimeCom2.day)) / (1000 * 60 * 60 * 24));
break;
case "h":
case "hour":
result = Math.round((Date.UTC(TimeCom1.year, TimeCom1.month - 1, TimeCom1.day, TimeCom1.hour) - Date.UTC(TimeCom2.year, TimeCom2.month - 1, TimeCom2.day, TimeCom2.hour)) / (1000 * 60 * 60));
break;
case "min":
case "minute":
result = Math.round((Date.UTC(TimeCom1.year, TimeCom1.month - 1, TimeCom1.day, TimeCom1.hour, TimeCom1.minute) - Date.UTC(TimeCom2.year, TimeCom2.month - 1, TimeCom2.day, TimeCom2.hour, TimeCom2.minute)) / (1000 * 60));
break;
case "s":
case "second":
result = Math.round((Date.UTC(TimeCom1.year, TimeCom1.month - 1, TimeCom1.day, TimeCom1.hour, TimeCom1.minute, TimeCom1.second) - Date.UTC(TimeCom2.year, TimeCom2.month - 1, TimeCom2.day, TimeCom2.hour, TimeCom2.minute, TimeCom2.second)) / 1000);
break;
case "ms":
case "msecond":
result = Date.UTC(TimeCom1.year, TimeCom1.month - 1, TimeCom1.day, TimeCom1.hour, TimeCom1.minute, TimeCom1.second, TimeCom1.msecond) - Date.UTC(TimeCom2.year, TimeCom2.month - 1, TimeCom2.day, TimeCom2.hour, TimeCom2.minute, TimeCom2.second, TimeCom1.msecond);
break;
case "w":
case "week":
result = Math.round((Date.UTC(TimeCom1.year, TimeCom1.month - 1, TimeCom1.day) - Date.UTC(TimeCom2.year, TimeCom2.month - 1, TimeCom2.day)) / (1000 * 60 * 60 * 24)) % 7;
break;
default:
result = "invalid";
}
return (result);
}
</script>

时间: 2024-08-01 12:27:43

JavaScript自定义DateDiff函数(兼容所有浏览器)_时间日期的相关文章

javascript 日历提醒系统( 兼容所有浏览器 )_时间日期

功能介绍: 1.正常的日历功能. 2.等等等 3.接收 数组 例如: 复制代码 代码如下: new Calendar("id").show( { "20091120": "今天干了嘛嘛...", "2009320": "今天干了嘛嘛..." } ); 日历提示样式分为3类. a. 当日 b.当年当月当日提示样式 c.当月当日提示样式 鼠标覆盖在有提示的日期上自动出现提示内容 4...... 主要分为2种用处

Javascript倒计时页面跳转实例小结_时间日期

例1: 复制代码 代码如下: <script type="text/javascript" language="JavaScript">     var startTime = new Date();    var endTime=startTime.getTime()+10*60*1000;    var g_blinkswitch = 0;    var g_blinktitle = document.title;    function getRe

JavaScript 复制功能代码 兼容多浏览器_典型特效

因此兼容性没得说了,现在用不上的话,先收藏一下吧. xmlns="http://www.w3.org/1999/xhtml"> JavaScript 复制功能代码,兼容多浏览器 贴图地址:

Javascript iframe交互并兼容各种浏览器的解决方法_javascript技巧

在Web前端开发中,我们经常会用到iframe这个控件. 但是这个控在内.外交互时,往往各个浏览器所用的关键字不同,很是麻烦,为了能够得到子iframe中的window对象,各家浏览器有着各家的指定,有的是window,有的是contentWindow等等也许还有我们不知道的. 但是从子页面访问父层页面,其本上大家都是window.parent就可以了. 那么通过这个特征,我们可以在子页面中,把自身的window对象传递给父页面就可以了,这样父页面就很轻松的访问子页面,再也不用靠虑如何从ifra

javascript 格式化时间日期函数代码脚本之家修正版_时间日期

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] javascript格式化日期时间函数_时间日期_http://www.jb51.net/article/14753.htm

javascript自定义in_array()函数实现方法_javascript技巧

本文实例讲述了javascript自定义in_array()函数实现方法.分享给大家供大家参考.具体如下: function in_array( what, where ){ var a=false; for(var i=0;i<where.length;i++){ if(what == where[i]){ a=true; break; } } return a; } 希望本文所述对大家的javascript程序设计有所帮助. 以上是小编为您精心准备的的内容,在的博客.问答.公众号.人物.课程

ASP 中 DateDiff 函数详解 主要实现两日期加减操作_ASP基础

ASP 中 DateDiff 函数详解DateDiff 函数  描述  返回两个日期之间的时间间隔.  语法  DateDiff(interval, date1, date2 [,firstdayofweek][, firstweekofyear]])  DateDiff 函数的语法有以下参数:  参数 描述  interval 必选.字符串表达式,表示用于计算 date1 和 date2 之间的时间间隔.有关数值,请参阅"设置"部分.  date1, date2 必选.日期表达式.用

ASP 中 DateDiff 函数详解 主要实现两日期加减操作

ASP 中 DateDiff 函数详解 DateDiff 函数 描述  返回两个日期之间的时间间隔.  语法  DateDiff(interval, date1, date2 [,firstdayofweek][, firstweekofyear]])  DateDiff 函数的语法有以下参数: 参数 描述  interval 必选.字符串表达式,表示用于计算 date1 和 date2 之间的时间间隔.有关数值,请参阅"设置"部分.  date1, date2 必选.日期表达式.用于

谈谈JavaScript自定义回调函数_javascript技巧

废话不多说了,直接给大家贴代码了. 背景分析 首先看一段js的代码,主要实现添加的时候首先通过异步请求判断是否存在,如果不存在的话,在进行添加操作: function add(url,data) { var isExited = isExited(data); if(!isExited){ addRequest(url, data); } } 当我添加一个数据的时候,我首先通过判断是否在数据库中存在(当然,如果前后台彻底分离的话,不应该前端进行业务逻辑的判断,前端只应该,用来展示数据),首先,i