JS 时间戳转换、获取当前时间年月日、时间戳转日期时间 (自定义格式)等方法整理

简介: JS 时间戳转换、获取当前时间年月日、时间戳转日期时间 (自定义格式)等方法整理
学习过程中将笔记整理跟大家分享,希望对大家也有所帮助,共同成长进步💪~
如果大家喜欢,可以点赞或留言💕 ~~,谢谢大家⭐️⭐️⭐️~
文章首发于 https://juejin.cn/post/7017611036526116900

1.时间戳转换(10位数)/(13位)

//时间戳13位
formatDate: function (time) {//时间戳转日期
    let date = new Date(time);
    let y = date.getFullYear();
    let MM = date.getMonth() + 1;
    MM = MM < 10 ? ('0' + MM) : MM;
    let d = date.getDate();
    d = d < 10 ? ('0' + d) : d;
    let h = date.getHours();
    h = h < 10 ? ('0' + h) : h;
    let m = date.getMinutes();
    m = m < 10 ? ('0' + m) : m;
    let s = date.getSeconds();
    s = s < 10 ? ('0' + s) : s;
    return y + '-' + MM + '-' + d + ' ' + h + ':' + m + ':' + s;
    // return y + '-' + MM + '-' + d;
},
//时间戳10位
formatDate: function (time) {//时间戳转日期
    let date = new Date(parseInt(time) * 1000);
    let y = date.getFullYear();
    let MM = date.getMonth() + 1;
    MM = MM < 10 ? ('0' + MM) : MM;
    let d = date.getDate();
    d = d < 10 ? ('0' + d) : d;
    let h = date.getHours();
    h = h < 10 ? ('0' + h) : h;
    let m = date.getMinutes();
    m = m < 10 ? ('0' + m) : m;
    let s = date.getSeconds();
    s = s < 10 ? ('0' + s) : s;
    return y + '-' + MM + '-' + d + ' ' + h + ':' + m + ':' + s;
    // return y + '-' + MM + '-' + d;
},

2.时间戳转日期时间 (可自定义返回格式)

这里使用的JavaScript函数库jutils的formatDate函数,引用地址jutils附上:
<script src="https://cdn.jsdelivr.net/npm/jutils-src"></script>

function formatDate(data,formatstr){
    var arrweek=["日","一","二","三","四","五","六"];
    var str=formatstr.replace(/yyyy|YYYY/,date.getFullYear()).replace(/yy|YY/,
    $addZero(date.getFullYear() % 100,2)).replace(/mm|MM/,$addZero(date.getMonth() + 1,
    2)).replace(/m|M/g,date.getMonth() + 1).replace(/dd|DD/,$addZero(date.getDate(),2)).replace(/d|D/g,
    date.getDate()).replace(/hh|HH/,$addZero(date.getHours(),2)).replace(/h|H/g,
    date.getHours()).replace(/ii|II/,$addZero(date.getMinutes(),2)).replace(/i|I/g,
    date.getMinutes()).replace(/ss|SS/,$addZero(date.getSeconds(),2)).replace(/s|S/g,
    date.getSeconds()).replace(/w|g/,$addZero(date.getDay(),2)).replace(/W/g,arrweek[date.getDay()]);
    return str;
}
function $addZero(v,size){
  for(var i=0,len=size-(v+"").length;i<len;i++){
    v="0"+v;
  }
  return v+""
}

使用示例

// 年、月、日、时、分、秒
var date = jutils.formatDate(new Date(1634002035*1000),"YYYY-MM-DD HH:ii:ss");
// 2021-10-12 09:27:15

//年、月、日、周
var date = jutils.formatDate(new Date(1634002035*1000),"YYYY-MM-DD 周W");
//2021-10-12 周二

//时、分、秒
var date = jutils.formatDate(new Date(1634002035*1000),"HH:ii:ss");
//09:27:15

3.获取当前时间戳的方法

var times = Date.parse(new Date());//不推荐使用,因为毫秒级别的数值被转化为000 ,不准确!

var times = (new Date()).valueOf();//获取当前毫秒的时间戳,准确!

var times = new Date().getTime();//返回数值单位是毫秒;

4.时间转时间戳毫秒方法

(new Date(this.zzsj)).getTime()   //getTime()返回数值的单位是毫秒   

5.时间转换成时间戳

Date.parse()//转时间戳

6.获取当前的年月日

getDatetime(){
    //获取当前的年月日
    let date_ = new Date();
    let seperator1 = "-";
    let year = date_.getFullYear();
    let month = date_.getMonth() + 1;
    let strDate = date_.getDate();
}

7.获取当前星期几

getDatetime(){
    //获取当前星期几
    let date_ = new Date();
    let days = date_.getDay();
    switch(days) {
        case 1:
            days = '星期一';
            break;
        case 2:
            days = '星期二';
            break;
        case 3:
            days = '星期三';
            break;
        case 4:
            days = '星期四';
            break;
        case 5:
            days = '星期五';
            break;
        case 6:
            days = '星期六';
            break;
        case 0:
            days = '星期日';
            break;
    }
    this.days = days;
}

8.Js获取当前日期时间及其它操作

var Date = new Date();
Date.getYear();        //获取当前年份(2位)
Date.getFullYear();    //获取完整的年份(4位,1970-????)
Date.getMonth();       //获取当前月份(0-11,0代表1月)
Date.getDate();        //获取当前日(1-31)
Date.getDay();         //获取当前星期X(0-6,0代表星期天)
Date.getTime();        //获取当前时间(从1970.1.1开始的毫秒数)
Date.getHours();       //获取当前小时数(0-23)
Date.getMinutes();     //获取当前分钟数(0-59)
Date.getSeconds();     //获取当前秒数(0-59)
Date.getMilliseconds();    //获取当前毫秒数(0-999)
Date.toLocaleDateString();     //获取当前日期
var time=Date.toLocaleTimeString();     //获取当前时间
Date.toLocaleString( );        //获取日期与时间
目录
相关文章
|
13天前
|
缓存 监控 前端开发
JavaScript 实现大文件上传的方法
【10月更文挑战第17天】通过以上步骤和方法,我们可以实现较为可靠和高效的大文件上传功能。当然,具体的实现方式还需要根据实际的应用场景和服务器要求进行调整和优化。
|
1天前
|
JavaScript 前端开发 图形学
JavaScript 中 Math 对象常用方法
【10月更文挑战第29天】JavaScript中的Math对象提供了丰富多样的数学方法,涵盖了基本数学运算、幂运算、开方、随机数生成、极值获取以及三角函数等多个方面,为各种数学相关的计算和处理提供了强大的支持,是JavaScript编程中不可或缺的一部分。
|
6天前
|
JavaScript 前端开发 Go
异步加载 JS 的方法
【10月更文挑战第24天】异步加载 JavaScript 是提高网页性能和用户体验的重要手段。通过使用不同的方法和技术,可以实现灵活、高效的异步加载 JavaScript。在实际应用中,需要根据具体情况选择合适的方法,并注意处理可能出现的问题,以确保网页能够正常加载和执行。
|
17天前
|
人工智能 JavaScript 网络安全
ToB项目身份认证AD集成(三完):利用ldap.js实现与windows AD对接实现用户搜索、认证、密码修改等功能 - 以及针对中文转义问题的补丁方法
本文详细介绍了如何使用 `ldapjs` 库在 Node.js 中实现与 Windows AD 的交互,包括用户搜索、身份验证、密码修改和重置等功能。通过创建 `LdapService` 类,提供了与 AD 服务器通信的完整解决方案,同时解决了中文字段在 LDAP 操作中被转义的问题。
|
1天前
|
Web App开发 JavaScript 前端开发
如何确保 Math 对象的方法在不同的 JavaScript 环境中具有一致的精度?
【10月更文挑战第29天】通过遵循标准和最佳实践、采用固定精度计算、进行全面的测试与验证、避免隐式类型转换以及持续关注和更新等方法,可以在很大程度上确保Math对象的方法在不同的JavaScript环境中具有一致的精度,从而提高代码的可靠性和可移植性。
|
1天前
|
JavaScript 前端开发 开发者
|
8天前
|
前端开发 JavaScript UED
"前端小技巧大揭秘:JS如何将后台时间戳秒变亲切小时前、分钟前,让用户秒懂,提升互动体验!"
【10月更文挑战第23天】在Web开发中,将后台返回的时间戳转换为“小时前”、“分钟前”、“刚刚”等友好的时间描述是常见需求。本文介绍如何用JavaScript实现这一功能,通过计算当前时间和时间戳的差值,返回相应的描述,提升用户体验。
16 0
|
18天前
|
存储 JavaScript 前端开发
JavaScript数组去重的八种方法详解及性能对比
在JavaScript开发中,数组去重是一个常见的操作。本文详细介绍了八种实现数组去重的方法,从基础的双重循环和 indexOf() 方法,到较为高级的 Set 和 Map 实现。同时,分析了每种方法的原理和适用场景,并指出了使用 Set 和 Map 是目前最优的解决方案。通过本文,读者可以深入理解每种方法的优缺点,并选择最合适的数组去重方式。
33 0
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
86 2
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的小区物流配送系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的小区物流配送系统附带文章源码部署视频讲解等
109 4