• 售前

  • 售后

热门帖子
入门百科

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

[复制链接]
尘埃416 显示全部楼层 发表于 2021-8-14 14:20:43 |阅读模式 打印 上一主题 下一主题
js日期时间格式化

将日期时间转换为指定格式,如:YYYY-mm-dd HH:MM表现2019-06-06 19:45
  1. function dateFormat(fmt, date) {
  2.     let ret;
  3.     const opt = {
  4.         "Y+": date.getFullYear().toString(),        // 年
  5.         "m+": (date.getMonth() + 1).toString(),     // 月
  6.         "d+": date.getDate().toString(),            // 日
  7.         "H+": date.getHours().toString(),           // 时
  8.         "M+": date.getMinutes().toString(),         // 分
  9.         "S+": date.getSeconds().toString()          // 秒
  10.         // 有其他格式化字符需求可以继续添加,必须转化成字符串
  11.     };
  12.     for (let k in opt) {
  13.         ret = new RegExp("(" + k + ")").exec(fmt);
  14.         if (ret) {
  15.             fmt = fmt.replace(ret[1], (ret[1].length == 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, "0")))
  16.         };
  17.     };
  18.     return fmt;
  19. }
复制代码
用法:
  1. let date = new Date()
  2. dateFormat("YYYY-mm-dd HH:MM", date)
  3. >>> 2019-06-06 19:45`
复制代码
如果对日期时间处理的需求较多, 推荐moment.js这个日期处理类库, 简朴方便.
Moment.js格式化日期时间

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

当前时间:
  1. moment().format('YYYY-MM-DD HH:mm:ss'); //2014-09-24 23:36:09
复制代码
今天是星期几:
  1. moment().format('d'); //3
复制代码
转换当前时间的Unix时间戳:
  1. moment().format('X');
复制代码
相对时间
20120901相对当前日期是2年前
  1. moment("20120901", "YYYYMMDD").fromNow(); //2 years ago
复制代码
7天后的日期:
  1. moment().add('days',7).format('YYYY年MM月DD日'); //2014年10月01日
复制代码
9小时后的时间:
  1. 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 PMAM PM
a小写的am pmam 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
XUnix时间戳1411572969
更多有关moment.js的介绍,请访问项目官网:http://momentjs.com/
总结

到此这篇关于js日期时间格式化的文章就介绍到这了,更多干系js日期时间格式化内容请搜刮脚本之家以前的文章或继续浏览下面的干系文章盼望大家以后多多支持脚本之家!

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作