日期对象

1.日期对象
  • 1.Date日期对象,用来获取当前系统日期.
    • 是本地对象,本地对象的特点是不能直接使用,这仅仅是个类方法(类似于函数),需要new执行后才能使用.
  • 2.创建日期对象
    • new Date(系统默认)
2.日期对象声明

var date1 = new Date();
//设定制定时间:(兼容最强)
var date2 = new Date(“2016/01/27 12:00:00”)
//不常用:
var date3 = new Date(‘Wed Jan 27 2016 12:00:00 GMT+0800 (中国标准时间)’);

  • 2.1.获取日期对象的每一部分:
var year = d.getFullYear();//获取完整年份(浏览器都支持)
var month = d.getMonth();//月份是0--11
var myDate = d.getDate(); //获取日 1-31
var day = d.getDay();//星期是0--6  (0是星期天)

var hours = d.getHours();//获取小时 0-23
var minutes = d.getMinutes(); //获取分钟 0-59
var seconds = d.getSeconds(); //获取秒  0-59
var minlls = d.getMilliseconds(); //获取毫秒 (1s = 1000ms)

//设置日期对象

new Date(要设置的数据)
  • 2.2.字符:一个参数,直接设置,不允许日期溢出,否则会无效的日期,没有设置的部分,为0.
var d = new Date("2008.8.8");
var d = new Date("2008/8/8");
var d = new Date("2008-8-8");
var d = new Date("2008,8,8");
var d = new Date("2008 8 8");
var d = new Date("2008.14.8 8:8");
var d = new Date("2008.8.8 8:8");
  • 2.3.数值:多个参数,直接设置,月份从0开始,日期溢出,向前进1,没有设置的部分为0.
var d = new Date(2008,8,8);
var d = new Date(2008,7,8);
var d = new Date(2008,15,8);
var d = new Date(2008,15,8);
var d = new Date(2008,15,8,20,8,8);
  • 返回距离1970/01/01毫秒数-> 独立设置时间戳(毫秒数差值)
    //返回1970年1月1日午夜与当前日期和时间之间的毫秒数(4种方法)
var date = Date.now();
var date = +new Date();
var date = new Date().getTime(1970/01/01);
var date = new Date().valueOf();
3.计算两个时间之间的差值
 // 计算两个日期之间的差值

    function dateDiff(d1,d2){
        // 得到第一个日期对象
        var date1 = new Date(d1);

        // 根据用户是否传参,决定第二个日期对象是指定日期,还是默认日期
        if(d2){
            var date2 = new Date(d2);
        }else{
            var date2 = new Date();
        }
//三目 var date2 = d2 ? new Date(d2) : new Date();
        // console.log(date1 - date2);
        // 利用时间戳计算差值
        var t = Math.abs(date1.getTime() - date2.getTime());

        // console.log(t);
        // 作业:如何根据毫秒数,计算天,时,分,秒,毫秒

        var day = parseInt(t/1000/60/60/24);
        var h = parseInt((t - day*24*60*60*1000)/1000/60/60);
        var m = parseInt((t - day*24*60*60*1000 - h*60*60*1000)/1000/60);
        var s = parseInt((t - day*24*60*60*1000 - h*60*60*1000 - m*60*1000)/1000)
        var ms = t - day*24*60*60*1000 - h*60*60*1000 - m*60*1000 - s*1000;
        
        return {
            day:day,
            h:h,
            m:m,
            s:s,
            ms:ms
        }
    }


    console.log(dateDiff("2008.8.8","2020/8/8"));
    
    // 如果只传一个日期,想计算距离当前时间
    console.log(dateDiff("2008.8.8"));
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值