zoukankan      html  css  js  c++  java
  • Js计算间隔天数和Date对象

    1、工作里遇到了计算两个日期的间隔天数问题,这个问题比较简单,只需要按照输入的日期,分别取出年月日,用new Date(year, month, date)的方法创建Date对象,直接对Date对象进行运算,可以得到两日期的间隔毫秒数,对之进行换算就可以得到天数了。

      具体代码:

    1 function showDays() {
    2         var start_day = document.getElementById("date1").value.split("-");//起始日期
    3         var end_day = document.getElementById("date2").value.split("-");//结束日期
    4         console.log(start_day + " to " + end_day);
    5         var start_obj = new Date(start_day[0], start_day[1] - 1, start_day[2]);//月份是从0开始计算,所以这里需要减一
    6         var end_obj = new Date(end_day[0], end_day[1] - 1, end_day[2]);
    7         console.log(start_obj + " to " + end_obj);
    8         console.log((end_obj - start_obj) / (1000 * 3600 * 24));
    9 }

    2、借此机会总结一下Date对象的特性和相关方法

      1) Date对象的定义:

    1 var date1 = new Date();//根据当前时间创建Date对象
    2 var date2 = new Date(dateVal);//根据给定的毫秒数,从1970年1月1日开始计算日期,创建Date对象
    3 var date3 = new Date(year, month, date[, hours[, minutes[, seconds[,ms]]]]);//根据给定的时间创建Date对象

      要知道,Date对象存放时间的度量是毫秒,方式是以从1970年1月1日开始计算的毫秒数来表示特定的时间。

      要注意用给定的时间来创建时间对象时,Date对象在月份的表示上是从0~11,所以要对月份减一。

      2) Date对象的静态方法:

      Date.parse():解析一个日期时间字符串,并返回1970/1/1午夜距离该日期时间的毫秒数。

      Date.UTC():根据世界时返回1970年1月1日到指定日期的毫秒数,参数是按照指定格式的日期和时间。

      简单的说,Date.perse()对于时间的解析和本地设置的时区有关,而且支持参数中出现月份的英文缩写和星期几的英文缩写,实际上,在调用Date()对象的构造方法时,会在后台先调用Date.parse()来解析传入的参数,也是说下面的代码是等价的:

    1 var date1 = new Date("Oct, 12, 2015");
    2 var date2 = new Date(Date.parse("Oct, 12, 2015"));

      而Date.TUC()也是返回毫秒数,但是Date.TUC()使用的参数不一样,Date.UTC()的参数分别是年份、从0开始算的月份(0到11)、日期(1到31)、小时数(0到23)、分钟、秒以及毫秒数,其中只有年和月是必须的。没有提供日期时,默认为1,其他的的参数没有提供时都默认为0。

      3) Date对象的常用方法

      比较常用的比如getDate(),getDay(),getMonth(),getFullYear()等等,需要注意的是月份和星期几都是从0开始的。

  • 相关阅读:
    Spring IOC注入接口多实现解决
    Spring Security 学习总结
    Spring Boot自动配置与Spring 条件化配置
    1403. Minimum Subsequence in Non-Increasing Order
    1457. Pseudo-Palindromic Paths in a Binary Tree
    1368. Minimum Cost to Make at Least One Valid Path in a Grid
    1456. Maximum Number of Vowels in a Substring of Given Length
    1455. Check If a Word Occurs As a Prefix of Any Word in a Sentence
    1472. Design Browser History
    1471. The k Strongest Values in an Array
  • 原文地址:https://www.cnblogs.com/s1nker/p/4753646.html
Copyright © 2011-2022 走看看