您的位置:首页 > 编程学习 > > 正文

js时间变成日期格式(js日期时间格式化的方法实例)

更多 时间:2021-10-16 00:31:18 类别:编程学习 浏览量:791

js时间变成日期格式

js日期时间格式化的方法实例

js日期时间格式化

将日期时间转换为指定格式,如:YYYY-mm-dd HH:MM表示2019-06-06 19:45

  • function dateFormat(fmt, date) {
        let ret;
        const opt = {
            "Y+": date.getFullYear().toString(),        // 年
            "m+": (date.getMonth() + 1).toString(),     // 月
            "d+": date.getDate().toString(),            // 日
            "H+": date.getHours().toString(),           // 时
            "M+": date.getMinutes().toString(),         // 分
            "S+": date.getSeconds().toString()          // 秒
            // 有其他格式化字符需求可以继续添加,必须转化成字符串
        };
        for (let k in opt) {
            ret = new RegExp("(" + k + ")").exec(fmt);
            if (ret) {
                fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0")))
            };
        };
        return fmt;
    }
    
    
  • 用法:

  • let date = new Date()
    dateFormat("YYYY-mm-dd HH:MM", date)
    >>> 2019-06-06 19:45`
    
    
  • 如果对日期时间处理的需求较多, 推荐moment.js这个日期处理类库, 简单方便.

    Moment.js格式化日期时间

    Moment.js是一个轻量级的JavaScript时间库,它方便了日常开发中对时间的操作,提高了开发效率。日常开发中,通常会对时间进行这几个操作:比如获取时间,设置时间,格式化时间,比较时间等等。

    格式化日期

    当前时间:

  • moment().format('YYYY-MM-DD HH:mm:ss'); //2014-09-24 23:36:09 
    
    
  • 今天是星期几:

  • moment().format('d'); //3 
    
    
  • 转换当前时间的Unix时间戳:

  • moment().format('X'); 
    
    
  • 相对时间

    20120901相对当前日期是2年前

  • moment("20120901", "YYYYMMDD").fromNow(); //2 years ago 
    
    
  • 7天后的日期:

  • moment().add('days',7).format('YYYY年MM月DD日'); //2014年10月01日 
    
    
  • 9小时后的时间:

  • moment().add('hours',9).format('HH:mm:ss'); 
    
    
  • moment.js提供了丰富的说明文档,使用它还可以创建日历项目等复杂的日期时间应用。我们日常开发中最常用的是格式化时间,下面我把常用的格式制作成表格说明供有需要的朋友查看:

  • 格式代码 说明 返回值例子
    M 数字表示的月份,没有前导零 1到12
    MM 数字表示的月份,有前导零 01到12
    MMM 三个字母缩写表示的月份 Jan到Dec
    MMMM 月份,完整的文本格式 January到December
    Q 季度 1到4
    D 月份中的第几天,没有前导零 1到31
    DD 月份中的第几天,有前导零 01到31
    d 星期中的第几天,数字表示 0到6,0表示周日,6表示周六
    ddd 三个字母表示星期中的第几天 Sun到Sat
    dddd 星期几,完整的星期文本 从Sunday到Saturday
    w 年份中的第几周 如42:表示第42周
    YYYY 四位数字完整表示的年份 如:2014 或 2000
    YY 两位数字表示的年份 如:14 或 98
    A 大写的AM PM AM PM
    a 小写的am pm am pm
    HH 小时,24小时制,有前导零 00到23
    H 小时,24小时制,无前导零 0到23
    hh 小时,12小时制,有前导零 00到12
    h 小时,12小时制,无前导零 0到12
    m 没有前导零的分钟数 0到59
    mm 有前导零的分钟数 00到59
    s 没有前导零的秒数 1到59
    ss 有前导零的描述 01到59
    X Unix时间戳 1411572969
  • 更多有关moment.js的介绍,请访问项目官网:http://momentjs.com/

    总结

    到此这篇关于js日期时间格式化的文章就介绍到这了,更多相关js日期时间格式化内容请搜索开心学习网以前的文章或继续浏览下面的相关文章希望大家以后多多支持开心学习网!