简体   繁体   English

通过moment.js创建日历数组

[英]create calendar array by moment.js

I want to create array like this. 我想创建这样的数组。

var date_ = [
{ "DateText": "Mon - 2nd April", "Date": "2/4/2017", "WeekNumber" : 13 },
{ "DateText": "Tue - 3rd April", "Date": "3/4/2017", "WeekNumber": 14 },
{ "DateText": "Wed - 4th April", "Date": "4/4/2017", "WeekNumber": 14 }
];

I got everything just this 2nd, 3rd and 4th number convention is remaining, can you check my piece of code. 我只剩下第二,第三和第四数字约定,您能检查一下我的代码吗。

 var date_ = []; var prevDate = moment().subtract(15, 'days'); var nextDate = moment().add(15, 'days'); var start = new Date(prevDate); var end = new Date(nextDate); while(start < end){ date_.push( { "DateText" : moment(start).format('ddd - DD MMM'), "Date" : moment(start).format('DD/MM/YYYY'), "WeekNumber" : moment(start).week() } ); var newDate = start.setDate(start.getDate() + 1); start = new Date(newDate); } console.log(date_); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.13.0/moment.min.js"></script> 

Thanks 谢谢

You need Do token see Display Format 您需要Do令牌查看显示格式

moment(start).format('ddd - Do MMM')

 var date_ = []; var prevDate = moment().subtract(15, 'days'); var nextDate = moment().add(15, 'days'); while (prevDate.isBefore(nextDate)) { date_.push({ "DateText": prevDate.format('ddd - Do MMM'), "Date": prevDate.format('DD/MM/YYYY'), "WeekNumber": prevDate.week() }); prevDate.add(1, 'days'); } console.log(date_); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.13.0/moment.min.js"></script> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM