• js中应用时间戳


    一、通过两个时间戳计算相差的天数、小时、分钟数

    //计算两个时间戳之间的毫秒差
    const difference = Date1-Date2;
    //计算天数
    const day = Math.floor(difference / (24 * 60 * 60 * 1000));
    //计算天数剩余的毫秒数
    const remain = difference % (24 * 60 * 60 * 1000);
    //计算小时数
    const hour = Math.floor(remain / (60 * 60 * 1000));
    //计算小时数后剩余的毫米数
    const remain1 = remain % (60 * 60 * 1000);
    //计算分钟数
    const minute = Math.floor(remain1 / (60 * 1000));

    二、日期格式转换为时间戳

    方法1:getTime(精确到毫秒)

    new Date("2021-07-26 18:55:49:123").getTime() // 1627296949123

    方法2:valueOf(精确到毫秒)

    new Date("2021-07-26 18:55:49:123").valueOf().  //1627296949123

    方法3:Date.parse(精确到秒,毫秒用0代替)

    Date.parse(new Date("2021-07-26 18:55:49:123"))  // 1627296949000

     三、将时间戳转换为日期格式

    方法1:用Date方法依次将年月日时分秒一个个算出来,然后拼接成需要的时间格式字符串

    function transformTime(timestamp = +new Date()) {
        if (timestamp) {
            var time = new Date(timestamp);
            var y = time.getFullYear();//getFullYear方法以四位数字返回年份
            var M = time.getMonth() + 1;// getMonth方法从 Date 对象返回月份 (0 ~ 11),返回结果需要手动加一
            var d = time.getDate();// getDate方法从 Date 对象返回一个月中的某一天 (1 ~ 31)
            var h = time.getHours();// getHours方法返回 Date 对象的小时 (0 ~ 23)
            var m = time.getMinutes();// getMinutes方法返回 Date 对象的分钟 (0 ~ 59)
            var s = time.getSeconds();// getSeconds方法返回 Date 对象的秒数 (0 ~ 59)
            return y + '-' + addZero(M) + '-' + addZero(d) + ' ' + addZero(h) + ':' + addZero(m) + ':' + addZero(s);
        } else {
            return '';
        }
    }
    
    //对小于10的值,在前面添加字符串‘0’
    function addZero(m) {
        return m < 10 ? '0' + m : m;
    }
    
    transformTime(); // "2021-07-26 20:47:39"

    方法2:Date的"toJSON"方法返回格林威治时间的JSON格式字符串,实际是使用"toISOString"(使用 ISO 标准返回 Date 对象的字符串格式)方法的结果。

       字符串形如"2021-07-27T14:25:53.793Z",转化为北京时间需要额外增加八个时区,我们需要取字符串前19位,然后把‘T’替换为空格,即是我们需要的时间格式。

    function time(time = +new Date()) { //time: 1627367153793
        var date = new Date(time + 8 * 3600 * 1000); // 增加8小时之后,date: Tue Jul 27 2021 22:25:53 GMT+0800 (中国标准时间)
        return date.toJSON().substr(0, 19).replace('T', ' ');//date.toJSON(): 2021-07-27T14:25:53.793Z
        //或者如下:
        // return date.toISOString().substr(0, 19).replace('T', ' '); //date.toISOString(): 2021-07-27T14:25:53.793Z
    }
    
    time(); // "2021-07-27 14:25:53"
  • 相关阅读:
    驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接
    spring 、Mybatis配置sql server数据库
    Win8安装程序出现2502、2503错误解决方法
    jsp-include 写法
    在swt中获取jar包中的文件 uri is not hierarchical
    Java调用shell脚本
    SWT自定义选项卡CTabFolder
    weblogic 生产模式和开发模式的互相转换
    or1200处理器的异常处理类指令介绍
    USACO Section 2.1 Healthy Holsteins
  • 原文地址:https://www.cnblogs.com/gg-qq/p/15047769.html
Copyright © 2020-2023  润新知