zoukankan      html  css  js  c++  java
  • js时间戳如何转时间

    js时间戳如何转时间

    一、总结

    一句话总结:Date对象分别获取年now.getFullYear()月now.getMonth()+1日now.getDate()即可

    Date对象分别获取年now.getFullYear()月now.getMonth()+1日now.getDate()即可

    二、js 时间与时间戳的转换

    参考:js 时间与时间戳的转换 - LD_Joy - 博客园
    https://www.cnblogs.com/nield-bky/p/6040853.html

    一:时间转时间戳:

    javascript获得时间戳的方法有四种,都是通过实例化时间对象 new Date() 来进一步获取当前的时间戳

    1.var timestamp1 = Date.parse(new Date()); // 结果:1477808630000 不推荐这种办法,毫秒级别的数值被转化为000

      console.log(timestamp1);

    2.var timestamp2 = (new Date()).valueOf(); // 结果:1477808630404 通过valueOf()函数返回指定对象的原始值获得准确的时间戳值

    console.log(timestamp2);

    3.var timestamp3 = new Date().getTime(); // 结果:1477808630404 ,通过原型方法直接获得当前时间的毫秒值,准确

    console.log(timestamp3);

    4.var timetamp4 = Number(new Date()) ; //结果:1477808630404 ,将时间转化为一个number类型的数值,即时间戳

    console.log(timetamp4);

    打印结果 如下:

    二,时间戳转时间

    var timestamp4 = new Date(1472048779952);//直接用 new Date(时间戳) 格式转化获得当前时间

    console.log(timestamp4);

    console.log(timestamp4.toLocaleDateString().replace(///g, "-") + " " + timestamp4.toTimeString().substr(0, 8)); //再利用拼接正则等手段转化为yyyy-MM-dd hh:mm:ss 格式

    效果如下:

    不过这样转换在某些浏览器上会出现不理想的效果,因为toLocaleDateString()方法是因浏览器而异的,比如 IE为2016年8月24日 22:26:19 格式 搜狗为Wednesday, August 24, 2016 22:39:42

    可以通过分别获取时间的年月日进行拼接,比如:

     
    function getdate() {
                var now = new Date(),
                    y = now.getFullYear(),
                    m = now.getMonth() + 1,
                    d = now.getDate();
                return y + "-" + (m < 10 ? "0" + m : m) + "-" + (d < 10 ? "0" + d : d) + " " + now.toTimeString().substr(0, 8);
            }
     

    三、js常用日期函数

     1 //1、获取时间戳对应的时间,格式YYYY-MM-DD
     2 function getTsFormatDate(timeStamp) {
     3     var date = new Date(timeStamp);
     4     //console.log(date); 结果为:Tue Apr 02 2019 07:49:23 GMT+0800 (中国标准时间)
     5     var seperator1 = "-";
     6     var year = date.getFullYear();
     7     var month = date.getMonth() + 1;
     8     var strDate = date.getDate();
     9     if (month >= 1 && month <= 9) {
    10         month = "0" + month;
    11     }
    12     if (strDate >= 0 && strDate <= 9) {
    13         strDate = "0" + strDate;
    14     }
    15     var currentdate = year + seperator1 + month + seperator1 + strDate;
    16     return currentdate;
    17 }
    18 //2、获取现在对应的时间,格式YYYY-MM-DD
    19 function getNowFormatDate() {
    20     var timeStamp = new Date().getTime();
    21     return getTsFormatDate(timeStamp);
    22 }
    23 
    24 //3、获取指定日期对应的时间,格式YYYY-MM-DD,比如一天前,参数则为-1,二天后,参数则为2
    25 function getSpecialFormatDate(dayOffset){
    26     var timeStamp = new Date().getTime()+dayOffset*1000*24*60*60;
    27     return getTsFormatDate(timeStamp);
    28 }
     
     
     
  • 相关阅读:
    没人关注的角落是个好地方
    PICKIT3 WIN10 无法连接问题解决
    TM1650+msp430单片机 调试及遇到问题的总结
    即将会来日常更新stm32的学习过程
    Learn Arduino the hard way 1——点亮一个LED
    准备再次开始更新
    Tcl之Read files for synthesis
    Verilog之event
    Tcl之Math
    Digital design之Boolean Algebra
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/10640318.html
Copyright © 2011-2022 走看看