js获取日期 moment
2022-10-28 本文已影响0人
少年你这是喜脉啊
js获取日期 moment
一.使用
相对时间
moment("20111031", "YYYYMMDD").fromNow(); // 7 年前
moment("20120620", "YYYYMMDD").fromNow(); // 6 年前
moment().startOf('day').fromNow(); // 16 小时前
moment().endOf('day').fromNow(); // 8 小时内
moment().startOf('hour').fromNow(); // 18 分钟前
日历时间
moment().subtract(10, 'days').calendar(); // 2018年8月27日
moment().subtract(6, 'days').calendar(); // 上周五下午4点17
moment().subtract(3, 'days').calendar(); // 本周一下午4点17
moment().subtract(1, 'days').calendar(); // 昨天下午4点17分
moment().calendar(); // 今天下午4点17分
moment().add(1, 'days').calendar(); // 明天下午4点17分
moment().add(3, 'days').calendar(); // 本周日下午4点17
moment().add(10, 'days').calendar(); // 2018年9月16日
常见操作
1.获取当前日期
moment(new Date()).add('year',0).format("YYYY-MM-DD") //如:2018-09-06
2.获取本年上个月的第一天和最后一天
var start= moment().add('year',0).month(moment().month() - 1).startOf('month').format("YYYY-MM-DD");
var end = moment().add('year',0).month(moment().month() - 1).endOf('month').format("YYYY-MM-DD");
如: 2018-08-01 2018-08-31
②获取某月的第一天和最后一天
startDate= moment("2019-11").startOf("month").format("YYYY-MM-DD"),
endDate= moment("2019-11").endOf("month").format("YYYY-MM-DD")
输出:"2019-11-01" "2019-11-31"
3.获取当天日期 时间详情
moment().format('MMMM Do YYYY, h:mm:ss a')
//September 6th 2018, 4:13:00 pm ===》 9月 6天 2018 4:13:00 下午
4.获取当天星期几
moment().format('dddd'); // 星期四
5.获取当天日期
moment().format("MMM Do YYYY"); // 9月 6日 2018
6.获取某天的 前一天,前2天
moment("2019-11-31").subtract(1, "days").format("YYYY-MM-DD")
moment("2019-11-31").subtract(2, "days").format("YYYY-MM-DD")
输出:"2019-11-30" "2019-11-29"
7.算出某天是属于星期几
moment("2019-12-20").format("dddd")
输出:Friday( 要有hooks.locale("zh-cn") 则输出星期五
8\. 获取前一个月的日期
moment().subtract(1, 'month').format('YYYY-MM-DD')
9.获取前一天
moment().subtract(1, 'day').format('YYYY-MM-DD')
10.获取前一年
moment().subtract(1, 'year').format('YYYY-MM-DD')
二.js设置时间日期
1.获取月份的第一天和最后一天 getDays(timeDetail) 天数
var cxrq00 = '201810';
var timeDetail = new Date(cxrq00.substring(0, 4) + '-' + cxrq00.substring(4,6));
var cfsj_start = cxrq00 + '01';
var days = getDays(timeDetail) + '';
var cfsj_end = cxrq00 + days;
console.log(cfsj_start,cfsj_end) //20181001 20181031
var cxrq00 = '2018-10';
var timeDetail = new Date(cxrq00 );
cxrq00 = cxrq00.replace(/-/, '');
var cfsj_start = cxrq00 + '01';
var days = getDays(timeDetail) + '';
var cfsj_end = cxrq00 + days;
console.log(cfsj_start,cfsj_end) //20181001 20181031