• JavaScript 时间的操作


    1. 标准日期格式 转 时间戳

    第一步,设置一个标准日期,获取这个日期格式的时间戳

    let timeStr = "2020-08-10 12:34:45";
    let newTime = timeStr.replace(/-/g,"/"); //需要转化成这样的时间格式 2020/08/10 12:34:35
    let createTime = new Date(newTime).getTime(); // 最后结果,毫秒下的时间,

    第二步,时间戳转化标准日期格式

    function timetrans(date){
                var date = new Date(date);//如果date为13位不需要乘1000, var date = new Date(date*1000)   ,因为getTime是精确到毫秒
                var Y = date.getFullYear() + '-';
                var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';
                var D = (date.getDate() < 10 ? '0' + (date.getDate()) : date.getDate()) + ' ';
                var h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':';
                var m = (date.getMinutes() <10 ? '0' + date.getMinutes() : date.getMinutes()) + ':';
                var s = (date.getSeconds() <10 ? '0' + date.getSeconds() : date.getSeconds());
                return Y+M+D+h+m+s;
    }
    // 2020-08-10 00:00:00

    2. 根据时间戳差值判断,几分钟前,几个小时前 ,正常日期格式

    let createTime = new Date("2020-08-10 21:10:00").getTime();
    console.log("获取指定时间戳= "+createTime);
    // 注意,时间戳要数字类型 ,不能NaN let nowTime
    = new Date().getTime(); console.log("获取当前时间戳= "+nowTime); let temp = nowTime-createTime; console.log("时间的差值= "+temp); //毫秒,转化成秒,转化成分钟,时间 let result = temp/1000/3600; console.log('结果'+result); if(result<1){ //多少分钟前 console.log(parseInt(result*60)+'分钟前'); }else if(result>=1&&result<=24){ console.log(parseInt(result)+"小时前"); }else { //具体时间 }

     

    3.  通过时间,给对象排序

           //将新数组里面的元素,通过时间进行排序
                function compare(p){
                    return function(m,n){
                        let a = m[p];
                        let b = n[p];
                        
                        let newTimeA = a.replace(/-/g,"/"); 
                        let newTimeB = b.replace(/-/g,"/"); 
                        let date1 = new Date(newTimeA);
                        let date2 = new Date(newTimeB);
                        return date2-date1;
                    }
                }
                MessageArr.sort(compare("time"));
     
           //将数据设置回去(react native 操作) 
           this.setState({
                    interActiveMessage: MessageArr
                });
  • 相关阅读:
    使用Visual Studio 2012 开发 Html5 应用
    模块化与MVC
    跨站脚本攻击(Cross‐Site Scripting (XSS))
    C#程序开发中经常遇到的10条实用的代码
    运用DebugDiag诊断ASP.Net异常
    前端MVVM框架avalon
    TOGAF架构开发方法(ADM)之需求管理阶段
    C#4.0中var和dynamic的区别
    hive 不同用户 权限设置 出错处理
    Delphi中类的运行期TypeInfo信息结构说明
  • 原文地址:https://www.cnblogs.com/tengyuxin/p/13472693.html
Copyright © 2020-2023  润新知