Js
今天、现在
moment()
Date转moment
moment(new Date());
周几
`周${"日一二三四五六"[moment(date).day()]}`
format 格式化
日期时间
moment(new Date()).format("YYYY-MM-DD hh:mm:ss”) // 2021-10-23 10:50:33
// HH 24小时制
moment(new Date()).format("YYYY-MM-DD HH:mm:ss”) // 2021-10-23 23:50:33
星期
moment().format('dddd') // 星期
显示为xx前,yy内
const now = new Date(); // 当前时间
const futureDate = new Date(2022, 9, 1); // 未来时间
console.log(moment(now).fromNow()); // "a few seconds ago"
console.log(moment(futureDate).fromNow()); // "in a year"
// 语言设置:可以通过moment.locale('zh-cn')设置语言为中文,以便输出中文的相对时间格式。
增减时间
moment(new Date()).add(1,"days"); // 加1天
moment(new Date()).add(1,"weeks"); // 加1周
moment(new Date()).add(1,"months"); // 加1月
moment(new Date()).add(1,"years"); // 加1年
moment(new Date()).subtract(1,"days"); // 减1天
moment(new Date()).subtract(1,"weeks"); // 减1周
moment(new Date()).subtract(1,"months"); // 减1月
moment(new Date()).subtract(1,"years"); // 减1年
// 注意:add和subtract操作是对象操作,也就是会改变原对象
var time1 = moment(new Date());
var time2 = time1.add(1,"days");
// 如上所示,time1和time2实际是同一个对象
// momentjs 提供了clone() 方法
var time3 = time1.clone().add(1,"days");
// time3 是一个新对象
日历输出:日历格式为昨天、明天、下周三这种表达,去掉calendar就是正常格式返回
//
// days可以换成months、hours、seconds、years
moment().subtract(10, 'days').calendar(); // 当前时间减10天,以日历时间格式返回————2021/03/28
moment().subtract(6, 'days').calendar(); // 当前时间减6天,以日历时间格式返回————上星期四10:27
moment().subtract(1, 'days').calendar(); // 前时间减1天,以日历时间格式返回————昨天10:27
moment().calendar(); // 当前时间————今天10:27
moment().add(1, 'days').calendar(); // 当前时间加1天,以日历时间格式返回————明天10:27
moment().add(3, 'days').calendar(); // 当前时间加三天,以日历时间格式返回————下星期六10:27
moment().add(10, 'days').calendar(); // 当前时间加10天,以日历时间格式返回————2021/04/17
日期的开始和结束
moment().startOf('day')
moment().endOf('day')
moment().startOf('week') // 周日 0点0分0秒
moment().endOf('week') // 周六 23时59分59秒
moment().startOf('isoWeek') // 周一 0点0分0秒
moment().endOf('isoWeek') // 周日 23时59分59秒
moment().startOf('month')
moment().endOf('month')
获取与设置日期的各部分
// 不带参数为获取,带参数为设置
moment().day() // (0~6, 0: Sunday, 6: Saturday)
moment().weekday() // (0~6, 0: Sunday, 6: Saturday)
moment().isoWeekday() // (1~7, 1: Monday, 7: Sunday)
moment().date() // 某一天
moment().date(1) // 设置
moment().month() // (0~11, 0: January, 11: December)
moment().month(1)
moment().year()
moment().year(2024)
moment().hour()
moment().hour(12)
moment().minute()
moment().minute(20)
moment().second()
moment().second(20)
moment().millisecond();
moment().millisecond(100);
moment().toArray() // [years, months, date, hours, minutes, seconds, milliseconds]
moment().toObject() // {years: xxxx, months: x, date: xx ...}
moment转原始Date
moment().toDate()
new Date(moment())
获得时间戳
moment().format('X') // 返回值为字符串类型
moment().unix() // 返回值为数值型