zoukankan      html  css  js  c++  java
  • JavaScript Date学习实例:获取3分钟前的时间“hhmmss”格式

    上一篇博客分享了Date对象的理论知识,今天正好看到一段相关的代码,可以继续深化,通过实例加强复习Date

    题目:获取3分钟前的时间,并且显示格式是hhmmss

    以下是看到的代码

    var time=new Date().getTime()-3*60*1000;
                  	var d=new Date();
                  	d.setTime(time);
                  	 var curHours = d.getHours()>=10?d.getHours():"0"+d.getHours();
                  	 var curMinutes = d.getMinutes()>=10?d.getMinutes():"0"+d.getMinutes();
                  	 var curSeconds = d.getSeconds()>=10?d.getSeconds():"0"+d.getSeconds();
    

    分析:

    1.Date类型本身就可以和整数进行计算,不需要使用getTime(),new Date()
    2.Date函数可以直接传整数


    下面分享两种比较高效的算法:

    第一种思想:

    var t = new Date()- 180000;
        t = new Date(t);
        t.getHours();
    
    

    第二种思想:

    var t = new Date()- 180000;
                 t = new Date(t);
                 var str = (t + '').slice(-26,-18).replace(':','');
    

    那我们继续往下看,下面这样的写法有问题吗?:

    var t = new Date() - 180000;
                 t = new Date(t);
                var h= t.getHours();
                var m=t.getMinutes();
                var s=t.getSeconds();
            alert(h.toString()+m.toString()+s.toString());
    

    这样还是错误的,因为要显示的格式是hhmmss,这样方法得到的个位数,不能出现OX形式


    第一种写法:

    var t = '' + new Date(new Date() - 180000);
    alert(t.slice(16,24).replace(/:/g,''))
    

    也可以写成:

    alert(('' + new Date(new Date() - 180000)).slice(16,24).replace(/:/g,''))
    

    注意:slice(16,24)是返回第16位到第25位之间的字符串,正好是hhmmss.
    例如:

    很容易看到:时分秒是第16-25位。

    第二种方法完整写法如下:

    var t = new Date() - 180000;
                 t = new Date(t);
                var h='00' +  t.getHours();
    var m='00' +  t.getMinutes();
    var s='00' +t.getSeconds();
    alert(h.slice(-2)+mslice(-2)+s.slice(-2));
    
    

    解释:用到"00"+t.getseconds(),是因为:比如 '00' + 5,得到005;比如“00”+15得到0015,而我们要显示的是最后两位,即05,或者15,所以是slice(-2)

  • 相关阅读:
    Neo4j简介
    HiBench算法简介
    Spark性能测试工具
    常用Benchmark
    Mapreduce的性能调优
    YARN node labels
    Yarn on Docker集群方案
    YARN on Docker
    HDP YARN MapReduce参数调优建议
    JVM优化:生产环境参数实例及分析
  • 原文地址:https://www.cnblogs.com/QingFlye/p/4320679.html
Copyright © 2011-2022 走看看