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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • sublime text激活码【2021最新】

    (sublime text激活码)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.htmlML…

    2022年3月20日
    410
  • turtle模块制作的弹球,面向对象,python海龟可不仅仅是画图「建议收藏」

    turtle模块制作的弹球,面向对象,python海龟可不仅仅是画图「建议收藏」fromturtleimport*fromrandomimportrandints=Screen()s.title("turtle模块制作的弹球_作者:李兴球")s.setup(800,600)s.delay(0)classBall(Turtle):  def__init__(self,x,y):    Turtle.__init__(self)…

    2025年12月2日
    7
  • Java中的重载、重写和重构的区别

    Java中的重载、重写和重构的区别1、重载重载(overloaded):重载就是在同一个类中允许同时存在一个以上的同名方法,只要这些方法的参数个数或类型不同即可。我们知道构造方法的名称已经由类名决定,所以构造方法只有一个名称,但如果希望以不同的方式来实例化对象,就需要使用多个构造方法来完成。由于这些构造方法都需要根据类名进行命名,为了让方法名相同而形参不同的构造方法同时存在,必须用到“方法重载”,虽然方法重载起源于构造方…

    2022年7月8日
    22
  • 签名设计一笔签步骤「建议收藏」

    签名设计一笔签步骤「建议收藏」首语:签名设计一笔签步骤,很多人都不会写艺术签名,其实,作为一个普通人,不会写是正常的,因为会设计的都是下过功夫的,今天就来给大家分享【签名设计一笔签步骤】,希望大家能够喜欢!签名设计一笔签步骤其实每个名字的签名步骤都是不一样的,特别是不一样的字都是有自己独特的写法的,所以,很难给大家都讲解了的,不过没关系,我找几个典型的来给大家设计做下示范,大家慢慢学习就行了。目录:1、设计签名工具的选择2、签名设计应该掌握的技巧方法3、视频演示4、具体的操作步骤5、注意事项正文:1、设计签名工具的

    2025年9月23日
    5
  • 垃圾邮件分类实战(SVM)

    1.数据集说明trec06c是一个公开的垃圾邮件语料库,由国际文本检索会议提供,分为英文数据集(trec06p)和中文数据集(trec06c),其中所含的邮件均来源于真实邮件保留了邮件的原有格式和

    2021年12月30日
    68
  • 最详细的ECLIPSE Android SDK下载安装及配置教程

    最详细的ECLIPSE Android SDK下载安装及配置教程最近Neo突发神经,想要将学过的一些计算机视觉、机器学习中的算法都放到移动设备上去跑跑,因为移动开发是大势所趋嘛,希望能够通过这样一个实践的过程,找到一些新的灵感(该不会是为了赚钱吧…),我自己目前也有一些idea,然后也希望以后能够进行计算机视觉、机器学习方面的创业,如果有志同道合的朋友可以一起交流交流(可通过邮箱:neo.huang3@gmail.com)。既然要做计算机视觉的移动开发,那么就要考虑是做ios还是Android了。。当然还有winphone的。一直想做ios的开发,无奈啊,手头有iP

    2022年7月19日
    18

发表回复

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

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