moment.js如何使用(强大的日期和时间管理插件)

moment.js中文官网

使用moment.js创建时间

moment() // 当前时间
moment("2019-01-01")//将字符串转为一个对象
moment({ year :2019, month :4, day :13, hour :15, minute :10, second :3, millisecond :123})

使用moment.js格式化日期

根据需要随意组合format方法中的参数

moment().format('YYYY-MM-DD HH:mm:ss') //"2019-04-13 16:46:40"
moment().format('YYYY年MM月DD日 HH时mm分ss秒') //"2019年04月13日 16时47分17秒"
moment().format('YYYY年MM月DD日 HH:mm:ss') // "2019年04月13日 16:46:18"
moment().format('YYYY.MM.DD HH:mm:ss') //"2019.04.13 16:47:58"

多语言格式化(根据所选语言显示不同效果)

//设置语言
var locale = window.navigator.userLanguage || window.navigator.language;//"zh-CN"
moment.locale()//"en"
moment.locale('zh-cn');//"zh-cn"
moment.locale()//"zh-cn"


//中文
moment().format('L');    // 2019-04-13
moment().format('l');    // 2019-04-13
moment().format('LL');   // 2019年4月13日
moment().format('ll');   // 2019年4月13日
moment().format('LLL');  // 2019年4月13日下午5点24分
moment().format('lll');  // 2019年4月13日下午5点24分
moment().format('LLLL'); // 2019年4月13日星期六下午5点24分
moment().format('llll'); // 2019年4月13日星期六下午5点24分

//韩文
moment().format('L');    // 2019.04.13
moment().format('l');    // 2019.4.13
moment().format('LL');   // 2019년 4월 13일
moment().format('ll');   // 2019년 4월 13일
moment().format('LLL');  // 2019년 4월 13일 오후 5시 25분
moment().format('lll');  // 2019년 4월 13일 오후 5시 25분
moment().format('LLLL'); // 2019년 4월 13일 토요일 오후 5시 25분
moment().format('llll'); // 2019년 4월 13일 토 오후 5시 25분

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

格式代码说明返回值例子
YYYY四位数字完整表示的年份如:2014 或 2000
YY两位数字表示的年份如:14 或 98
Q季度1到4
M数字表示的月份,没有前导零1到12
MM数字表示的月份,有前导零01到12
MMM三个字母缩写表示的月份Jan到Dec(不同语言有不同的显示)
MMMM月份,完整的文本格式January到December(不同语言有不同的显示)
D月份中的第几天,没有前导零1到31
DD月份中的第几天,有前导零01到31
d星期中的第几天,数字表示0到6,0表示周日,6表示周六
ddd三个字母表示星期中的第几天Sun到Sat (不同语言有不同的显示)
dddd星期几,完整的星期文本从Sunday到Saturday(不同语言有不同的显示)
w年份中的第几周如42:表示第42周
A大写的AM PMAM PM
a小写的am pmam pm
H小时,24小时制,无前导零0到23
HH小时,24小时制,有前导零00到23
h小时,12小时制,无前导零0到12
hh小时,12小时制,有前导零00到12
m没有前导零的分钟数0到59
mm有前导零的分钟数00到59
s没有前导零的秒数1到59
ss有前导零的描述01到59
XUnix时间戳1411572969

使用moment.js获取/设置时间信息

moment().second() //获得 秒
moment().second(Number) //设置 秒。0 到 59
moment().minute() //获得 分
moment().minute(Number) //设置 分。0 到 59
// 类似的用法
moment().hour() // 小时
moment().date() // 一个月里的第几天
moment().day() // 星期几
moment().dayOfYear() // 一年里的第几天
moment().week() // 一年里的第几周
moment().month() // 第几个月
moment().quarter() // 一年里的第几个季度
moment().year() // 年
moment().daysInMonth() // 当前月有多少天

使用moment.js操作时间


moment().add(7, 'days') // 之后的第7天。第2个参数还可以是 'months', 'years' 等。注意是复数。
moment().add(7, 'd')// 与上面一行代码的运行结果一样。
moment().subtract(1, 'months') // 上个月
 
moment().startOf('week') // 这周的第一天
moment().startOf('hour') // 等效与 moment().minutes(0).seconds(0).milliseconds(0)。
// 还支持 'year','month' 等
moment().endOf('week')

使用moment.js查询时间(作判断)

// 早于
moment('2010-10-20').isBefore('2010-10-21') // true
moment('2010-10-20').isBefore('2010-12-31', 'year') // false
moment('2010-10-20').isBefore('2011-01-01', 'year') // true

// 是否相等
moment('2010-10-20').isSame('2010-10-20') // true
moment('2010-10-20').isSame('2009-12-31', 'year')  // false
moment('2010-10-20').isSame('2010-01-01', 'year')  // true

// 晚于
moment('2010-10-20').isAfter('2010-10-19') // true
moment('2010-10-20').isAfter('2010-01-01', 'year') // false
moment('2010-10-20').isAfter('2009-12-31', 'year') // true

// 是否在时间范围内
moment('2010-10-20').isBetween('2010-10-19', '2010-10-25') // true
moment('2010-10-20').isBetween('2010-01-01', '2012-01-01', 'year') // false
moment('2010-10-20').isBetween('2009-12-31', '2012-01-01', 'year') // true

moment().isLeapYear() // 是否是闰年

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值