• 【巩固】JS获取时间的一些基础知识


     

     

    就是一个new Date()对象,要注意的有以下几点;

    1. 直接给oDate对象设置年月日时分秒的时候要分成两步,oDate.setFullYear()接受三个参数分别是年月日,注意月份是从0开始计一月的;而oDate.setHours(),可以接受3个或者4个,三个就是时分秒,四个就是再加一个毫秒;
    2. 网上搜到一种获取以当前时间为基准的下一段时间或者前一段时间的方法,主要用到oDate.setTime(),参数里放毫秒数,可以正数可以负数,代表着设置后的oDate为1970年1月1日后多少毫秒的时间点,注意setTime()返回的值其实是参数里的毫秒数,而不是设置后新的oDate对象。
    var oDate = new Date();
    var nTime = oDate.getTime();//现在的时间戳,距离1970年的毫秒数
     
    oDate.setFullYear(2016,8,15);//直接将2016年9月15日设置给了oDate。
    oDate.setHours(0,0,0,0);// 将0时0分0秒0毫秒,添加给了oDate。
    oDate.getTime();//这样获得了9月15日的时间戳,距离1970年的毫秒数
     
    var durTime = parseInt((fTime - nTime)/1000)//得到时间差的秒数
    var d = parseInt(durTime/86400);
    durTime%=86400 //这时durTime是不够一天的秒数,给小时的
    var h = parseInt(durTime/3600); //得到剩下秒数相当于小时
    durTime%=3600;
    var m = parseInt(durTime/60);
    var s = durTime%60;
    得到秒数如何得到天数,小时,分数,秒

    可以通过oDate.setTime(0)获得1970年1月1日这个时间点,参数里的数字可以是正负,代表距离1970年1月1日的时间差,单位是毫秒。 
    这样就可以很轻松的**得到当前时间的下一秒,或者前一秒,或者任意一段时间都可以**,比如

    var oDate = new Date(); //获得当前时间
    var nTime = oDate.getTime(); //获得当前时间距离1970年1月1日的时间毫秒
    oDate.setTime(nTime + 5000); //在nTime基础再加上5秒,就可以让oDate设置为当前时间的下5秒。注意这个方法返回的就是参数里的毫秒数,所以不要去赋值,因为赋值出来的数就是nTime +5000;
  • 相关阅读:
    原来四五年没有写过什么东西了
    Spark难道比oracle性能还差?百万级数据测试性能
    程序人常去的网站(转)
    Android中关于dip和px以及转换的总结
    padding与margin的区别
    Python装饰器探究——装饰器参数
    Python 装饰器执行顺序迷思
    Python CSV模块简介
    理解线程3 c语言示例线程基本操作
    Python 外部函数调用库ctypes简介
  • 原文地址:https://www.cnblogs.com/bluefantasy728/p/5648047.html
Copyright © 2020-2023  润新知