JavaScript 时间戳格式化日期

JavaScript 时间戳格式化日期JavaScript时间戳格式化日期项目中从后台获取接口数据时常需要按自己的需求将时间戳转化为对应的日期格式。//时间戳格式化为日期functionformatDate(timestamp,fmt){//这里传入的timestamp应该是Number数值,如果是字符串,需要先转换为Number//vartimestamp=parseInt(timestamp)vardate=newDate(timestamp)if(/(y+)/.tes

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

JavaScript 时间戳格式化日期

项目中从后台获取接口数据时常需要按自己的需求将时间戳转化为对应的日期格式。

// 时间戳格式化为日期
function formatDate(timestamp, fmt) { 
   
    // 这里传入的timestamp应该是Number数值,如果是字符串,需要先转换为Number
    // var timestamp=parseInt(timestamp)
    var date = new Date(timestamp)
    if (/(y+)/.test(fmt)) { 
   
        // $1标识第一个子串中的内容;这里当fmt格式中年份少于4位时,从后往前取
        fmt = fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length));
    }

    let o = { 
   
        "M+": date.getMonth() + 1,
        "d+": date.getDay(),
        "h+": date.getHours(),
        "m+": date.getMinutes(),
        "s+": date.getSeconds()
    };

    for (let key in o) { 
   
        if (new RegExp(`(${ 
     key})`).test(fmt)) { 
   
            let str = o[key] + "";
            fmt = fmt.replace(RegExp.$1, str.length === 2 ? str : padLeftZero(str));
        }
    }
    return fmt;
}

// 函数padLeftZero的作用:如果月份为1位(如9),则在其左边补0(变为09)
function padLeftZero(str) { 
   
    return "0" + str.substr(str.length - 1)
}

// 举例. timestamp格式应为13位,时间戳为10位的话,需要x1000
let res = formatDate(1469261934000, 'yyyy/MM/dd hh:mm:ss');
console.log(res); //2016/07/06 16:18:54



Jetbrains全家桶1年46,售后保障稳定

**增加日期转化为时间戳方法,此处暂未考虑兼容性问题,后期可优化补充。

// 时间戳格式化为日期
function formatTimestamp(dateNow) { 
   
    let date=new Date(dateNow);
    // 方式1
    // const time1=date.getTime();
    // 方式2
    // const time1=date.valueOf();
    // 方式3
    const time1=Date.parse(dateNow);
    return time1;
}

let res = formatTimestamp('2016/07/06 16:18:54');
console.log(res); //1467793134000




版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/215451.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 大数据教程,大数据学习线路图

    大数据教程,大数据学习线路图前言先引用一下马云大大的话:很多人还没搞清楚什么是PC互联网,移动互联网来了,我们还没搞清楚移动互联的时候,大数据时代又来了。马云深度解析大数据“大数据”是近年来IT行业的热词,并广泛的应用在各行各业。特别是近年来随着社交网络、物联网、云计算以及多种传感器的广泛应用,以数量庞大,种类众多,时效性强为特征的非结构化的数据不断涌现,数据的重要性愈发凸显,传统的数据存储、分析技术难以实时处…

    2022年5月22日
    35
  • JMeter做压力测试教程及结果分析

    JMeter做压力测试教程及结果分析一、测试工具:JMeter二、JMeter介绍:ApacheJMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。三、Java环境的安装与配置:(1)因为JMeter是使用JAVA写的,所以使用JMeter之前,先安装JAVA环境,oracle官网下载JDkht……

    2022年10月18日
    3
  • 2015年最新Android基础入门教程目录(完结版)

    2015年最新Android基础入门教程目录(完结版)2015年最新Android基础入门教程目录(完结版)前言:关于《2015年最新Android基础入门教程目录》终于在今天落下了帷幕,全套教程共148节已编写完毕,附上目录,关于教程的由来,笔者的情况和自学心得,资源分享以及一些疑问等可戳:下面是本系列教程的完整目录:

    2022年5月2日
    34
  • 串口数据读取和动态显示Tkinter+matplotlib+pyqtgraph(详细教程)

    串口数据读取和动态显示Tkinter+matplotlib+pyqtgraph(详细教程)

    2020年11月8日
    218
  • 如何保证缓存与数据库的双写一致性?

    作者 | 你是我的海啸 来源 | https://blog.csdn.net/chang384915878 分布式缓存是现在很多分布式应用中必不可少的组件,但是…

    2021年6月22日
    109
  • Spring Boot – JPA配置使用[通俗易懂]

    1.JPA是什么JPA顾名思义就是JavaPersistenceAPI的意思,是JDK5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。2.使用JPA的优势2.1标准化JPA是JCP组织发布的JavaEE标准之一,因此任何声称符合JPA标准的框架都遵循同样的架构,提供相同的访问API,这保证了基于JPA开发的…

    2022年4月3日
    117

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号