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


相关推荐

  • 【大话QT之十六】使用ctkPluginFramework插件系统构建项目实战「建议收藏」

    【大话QT之十六】使用ctkPluginFramework插件系统构建项目实战「建议收藏」”使用ctkPluginFramework插件系统构建项目实战”,这篇文章是写博客以来最纠结的一篇文章。倒不是因为技术都多么困难,而是想去描述一个项目架构采用ctkPluginFramework来构建总是未尽其意,描述的太少未免词不达意,描述的太多又显得太啰嗦。有些看过之前写的【大话QT之四】ctkPlugin插件系统实现项目插件式开发这篇文章的朋友也想了解一下到底如果从零开始架构一个项目。在写这

    2022年6月6日
    25
  • zookeeper入门教程_入门教程

    zookeeper入门教程_入门教程zookeeperwatcher架构zookeeper 配置中心分布式ID分布式锁集群搭建数据一致性协议:zab协议Zookeeper Leader选举Observer角色及其配置watcher架构客户端首先将Watcher注册到服务器,同时将Watch对象保存到客户端的Watch管理器中。当Zookeeper服务器监听到的数据发生变化时,服务器会通知客户端,接着客户端的Watch管理器会触发相关的Watcher来回调响应处理逻辑,从而完成整体的数据发布/订阅流程。javaAPIJava

    2022年8月9日
    3
  • 高效工作指南

    高效工作指南

    2021年9月9日
    47
  • sklearn库主要模块功能简介

    sklearn库主要模块功能简介数据科学系列:sklearn库主要模块功能简介01sklearn简介sklearn,全称scikit-learn,是python中的机器学习库,建立在numpy、scipy、matplotlib等数据科学包的基础之上,涵盖了机器学习中的样例数据、数据预处理、模型验证、特征选择、分类、回归、聚类、降维等几乎所有环节,功能十分强大,目前sklearn版本是0.23。与深度学习库存在pytorch、TensorFlow等多种框架可选不同,sklearn是python中传统机器学习的首选库,不存在其他竞争

    2022年10月18日
    0
  • [摘]UML学习一:标准建模语言UML的内容

    [摘]UML学习一:标准建模语言UML的内容

    2021年7月24日
    50

发表回复

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

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