有些时候我们需要计算两个日期间的天数,或者小时数等等。下面用JavaScript实现这个需求,然后学习一下需要用到的一些JavaScript函数。

JavaScript程序如下:

1 <script type="text/javascript"
2 var getOffDays = function(startDate, endDate) {  
3     //得到时间戳相减 得到以毫秒为单位的差  
4     var mmSec = (endDate.getTime() - startDate.getTime());
5     //单位转换为天并返回 
6     return (mmSec / 3600000 / 24); 
7 };  
8 alert(getOffDays(new Date(2009,8,7), new Date(2010,9,17)));  
9 </script>

JavaScript getTime()方法

getTime()方法所返回了从1970年1月1号以来所积累的毫秒总数。用法dateObject.getTime(),这个方法得结合Date对象使用。

下面的程序得到了从1970年1月1号以来所积累的毫秒总数并输出它:

1 <script type="text/javascript">
2 var d = new Date()
3 document.write(d.getTime() + " milliseconds since 1970/01/01")
4 </script>

程序运行结果为:

1 1284655348088 milliseconds since 1970/01/01

下面的程序我们得到了从1970年1月1号以来所用掉的年数总数并输出它:

01 <script type="text/javascript">
02 var minutes = 1000*60
03 var hours = minutes*60
04 var days = hours*24
05 var years = days*365
06 var d = new Date()
07 var t = d.getTime()
08 var y = t/years
09 document.write("It's been: " + y + " years since 1970/01/01!")
10 </script>

程序运行结果为:

1 It's been: 40.73615794193937 years since 1970/01/01!

JavaScript Date(日期)对象

Date 对象用于处理日期和时间。可以通过 new 关键词来定义 Date 对象。以下代码定义了名为 myDate 的 Date 对象:

1 var myDate = new Date();

Date 对象自动使用当前的日期和时间作为其初始值。

通过使用针对日期对象的方法,我们可以很容易地对日期进行操作。在下面的例子中,我们为日期对象设置了一个特定的日期 (2008 年 8 月 9 日):

1 var myDate = new Date();
2 myDate.setFullYear(2008,7,9);

表示月份的参数介于 0 到 11 之间。也就是说,如果希望把月设置为 8 月,则参数应该是 7。

在下面的例子中,我们将日期对象设置为 5 天后的日期:

1 var myDate = new Date();
2 myDate.setDate(myDate.getDate()+5);

如果增加天数会改变月份或者年份,那么日期对象会自动完成这种转换。

日期对象也可用于比较两个日期。下面的代码将当前日期与 2008 年 8 月 9 日做了比较:

01 var myDate=new Date();
02 myDate.setFullYear(2008,7,9);
03 var today = new Date();
04 if (myDate>today)
05 {
06     alert("Today is before 9th August 2008");
07 }
08 else
09 {
10     alert("Today is after 9th August 2008");
11 }

Javascript中的date对象和getTime()方法的更多相关文章

  1. javascript中的Date对象和Math对象

    1.Date对象 1.创建Date对象 var time1=new Date() 方法1:不指定参数 var time1=new Date(); alert(time1.toLocaleString( ...

  2. javascript中的Date对象

    Date是什么? Date是日期类的构造函数 也是个对象,用于构造日期对象的实例. 有一个 now()方法,返回截止目前的时间戳(1970.1.1日始). Date.parse()接受 一定格式的日期 ...

  3. JavaScript:JavaScript中常见获取对象元素的方法

    介绍: javascript中常见的3种获取元素的方法,分别是通过元素ID.通过标签名字和通过类名字来获取 操作如下: 1.getElementById DOM提供了一个名为getElementByI ...

  4. JavaScript中的Date对象在IOS中的“大坑”

    在IOS5以上版本(不包含IOS5)中的Safari浏览器能正确解释出Javascript中的 new Date('2013-10-21') 的日期对象. 但是在IOS5版本里面的Safari解释ne ...

  5. Javascript中的Date()对象

    创建一个指定的事件对象 需要在构造函数中传递一个表示时间的字符串作为参数例:var d2=new Date("8/27/2019"); 如果直接使用构造函数创建一个Date对象,则 ...

  6. javascript中的array对象属性及方法

    Array 对象 Array 对象用于在单个的变量中存储多个值. 创建 Array 对象的语法: new Array(); new Array(size); new Array(element0, e ...

  7. JS IOS/iPhone的Safari浏览器不兼容Javascript中的Date()问题的解决方法

    1 var date = new Date('2016-11-11 11:11:11'); 2 document.write(date); 最近在写一个时间判断脚本,需要将固定好的字符串时间转换为时间 ...

  8. MyBatis动态SQL底层原理分析 与 JavaScript中的Date对象,以及UTC、GMT、时区的关系

    http://fangjian0423.github.io/categories/mybatis/ http://xtutu.me/the-date-object-in-js/

  9. JavaScript -- 时光流逝(五):js中的 Date 对象的方法

    JavaScript -- 知识点回顾篇(五):js中的 Date 对象的方法 Date 对象: 用于处理日期和时间. 1. Date对象的方法 <script type="text/ ...

随机推荐

  1. C++clock()延时循环

    函数clock(),返回程序开始执行后所用的系统时间,但是有两个复制问题. 1.clock()返回时间的单位不一定是秒 2.该函数的返回类型在某些系统上可能是Long,也可能是unsigned lon ...

  2. springmvc项目,浏览器报404错误的问题

    问题描述: 建立了web工程,配置pom.xml,web.xml,编写controller类,在spring-mvc-servlet.xml文件中指定开启注解和扫描的包位置<mvc:annota ...

  3. 关于GitHub推送时发生Permission denied (publickey)的问题

    今天在学习廖雪峰老师官网的git教程“添加远程库”时发现总是推送失败,下边提示“Permission denied (publickey) 这个问题” 传送门:https://www.liaoxuef ...

  4. opencv-学习笔记(6)图像梯度Sobel以及canny边缘检测

    opencv-学习笔记(6)图像梯度Sobel以及canny边缘检测 这章讲了 sobel算子 scharr算子 Laplacion拉普拉斯算子 图像深度问题 Canny检测 图像梯度 sobel算子 ...

  5. python 智能合约日志操作

    from __future__ import unicode_literals import json from time import sleep, time # 中文编码 def encode_s ...

  6. nordic mesh中的消息缓存实现

    nordic mesh中的消息缓存实现 代码文件msg_cache.h.msg_cache.c. 接口定义 头文件中定义了四个接口,供mesh协议栈调用,四个接口如下所示,接口的实现代码在msg_ca ...

  7. es6从零学习(三):Class的基本用法

    es6从零学习(三):Class的基本用法 一:定义一个类 //定义类 class Point { constructor(x, y) { this.x = x; this.y = y; } toSt ...

  8. Advanced Fruits (最大公共子序列的路径打印)

    The company "21st Century Fruits" has specialized in creating new sorts of fruits by trans ...

  9. lintcode-196-寻找缺失的数

    196-寻找缺失的数 给出一个包含 0 .. N 中 N 个数的序列,找出0 .. N 中没有出现在序列中的那个数. 样例 N = 4 且序列为 [0, 1, 3] 时,缺失的数为2. 挑战 在数组上 ...

  10. lintcode-39-恢复旋转排序数组

    39-恢复旋转排序数组 给定一个旋转排序数组,在原地恢复其排序. 说明 什么是旋转数组? 比如,原始数组为[1,2,3,4], 则其旋转数组可以是[1,2,3,4], [2,3,4,1], [3,4, ...