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( );        //获取日期与时间
目录
相关文章
|
8月前
|
监控 负载均衡 JavaScript
有哪些有效的方法可以优化Node.js应用的性能?
有哪些有效的方法可以优化Node.js应用的性能?
410 69
|
7月前
|
JavaScript Linux 内存技术
Debian 11系统下Node.js版本更新方法详解
本指南详细介绍在Linux系统中安装和管理Node.js的步骤。首先检查现有环境,包括查看当前版本和清除旧版本;接着通过NodeSource仓库安装最新版Node.js并验证安装结果。推荐使用nvm(Node Version Manager)进行多版本管理,便于切换和设置默认版本。同时,提供常见问题解决方法,如权限错误处理和全局模块迁移方案,以及版本回滚操作,确保用户能够灵活应对不同需求。
641 0
|
7月前
|
JavaScript Linux 内存技术
Debian 11系统下Node.js版本更新方法
Debian 11更新Node.js主要就是这三种方式,无论你是初涉其中的新手还是找寻挑战的专家,总有一种方式能满足你的需求。现在,你已经是这个
755 80
|
9月前
|
JavaScript 前端开发 Unix
|
9月前
|
JavaScript 前端开发 Java
js 垃圾回收机制的方法
JS回收机制方法讲解
|
10月前
|
移动开发 运维 供应链
通过array.some()实现权限检查、表单验证、库存管理、内容审查和数据处理;js数组元素检查的方法,some()的使用详解,array.some与array.every的区别(附实际应用代码)
array.some()可以用来权限检查、表单验证、库存管理、内容审查和数据处理等数据校验工作,核心在于利用其短路机制,速度更快,节约性能。 博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
10月前
|
供应链 JavaScript 前端开发
通过array.every()实现数据验证、权限检查和一致性检查;js数组元素检查的方法,every()的使用详解,array.some与array.every的区别(附实际应用代码)
array.every()可以用来数据验证、权限检查、一致性检查等数据校验工作,核心在于利用其短路机制,速度更快,节约性能。 博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
JavaScript 前端开发 数据安全/隐私保护
|
JavaScript 前端开发 数据安全/隐私保护
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
311 2