moment.js使用

一.安装

 npm install moment --save

yarn add moment

二.使用

1.导入

 import moment from 'moment'

2.常用api

获取时间

moment().valueOf() // 获取时间戳(以毫秒为单位)

moment().startOf('day') // 设置为今天上午 12:00

moment().startOf('isoWeek') // 根据 ISO 8601 设置为本周的第一天上午 12:00

moment().startOf('month') // 设置为本月1日上午 12:00

moment().endOf('day') // 获取今天23时59分59秒

moment().endOf('isoWeek') // 获取本周周日23时59分59秒

moment().endOf('month') // 获取本月最后一天23时59分59秒

moment().year() // 获取当前年份

moment().month() // 获取当前月( 0~11, 0 =>1月, 11=>12月)

moment().date() // 获取今天

moment().day() // 获取当前星期 (0~6, 0: 周日, 6: 周六)

moment().daysInMonth() // 获取本月的总天数

moment().month(moment().month() - 1).startOf('month').valueOf() // 上个月1号的00:00:00

moment().month(moment().month() - 1).endOf('month').valueOf() // 上个月最后一天的23:59:59

moment().month(moment().month() - 1).startOf('month').valueOf() // 上个季度第一个月一号的00:00:00

moment().month(moment().month() - 1).endOf('month').valueOf() // 上个季度最后一个月最后一天的23:59:59

 

收到format('yyyy-MM-DD HH:MM:SS')影响
HH:MM:SS为24小时

格式化时间

moment().format('YYYY-MM-DD')

moment().format('hh:mm:ss a') // 格式化时分秒(12小时制)

moment().format('x') // 格式化时间戳(以毫秒为单位)

转化为JS原生Date对象

moment().toDate()
new Date(moment())

设置时间

moment().year(2019) // 设置年

moment().month(9) // 设置月( 0~11, 0 =>1月, 11=>12月)

moment().date(2) // 设置日期

moment().isoWeekday(1) // 设置日期为本周周一

moment().add(1, 'years') // 设置下一年

moment().add(1, 'months') // 设置下一月

moment().add(1, 'days') // 设置下一天

moment().add(1, 'weeks') // 设置下一周

moment().subtract(1, 'years') // 设置上一年

moment().subtract(1, 'months') // 设置上一月

moment().subtract(1, 'days') // 设置上一天

moment().subtract(1, 'weeks') // 设置上一周

比较时间

 let start_date = moment().subtract(1, 'weeks')
let end_date = moment().end_date.diff(start_date) // 返回毫秒数
end_date.diff(start_date, 'months') // 0
end_date.diff(start_date, 'weeks') // 1
end_date.diff(start_date, 'days') // 7
start_date.diff(end_date, 'days') // -7
 
三.拓展
1.文档
2.常用
posted @   前端小菜鸡*5  阅读(291)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示