Reputation: 3139
I'm having trouble formatting a date correctly in Moment.js. I'm using the format function with format "LLL D, YYYY" so it should return something like "Sep 15, 2016".
Instead, it's returning a the date in a weird format like "September 15, 2016 12:00 AM 15, 2016".
Here is my code, with the debugging info below.
moment.locale(picker.options.language);
console.log('picker.options.language:');
console.log(picker.options.language);
formatted = moment(picker.date).format(picker.format);
console.log('picker.date:');
console.log(picker.date);
console.log('picker.format:');
console.log(picker.format);
console.log('formatted:');
console.log(formatted);
And the console output from the above code:
Upvotes: 0
Views: 4489
Reputation: 19113
This should work...
formatted = moment(picker.date).format('MMM D, YYYY')
Ref: http://momentjs.com/docs/#/parsing/string-format/
Upvotes: 5
Reputation: 21209
From http://momentjs.com/docs/#/displaying/format/ we can see that "LLL" represents the format "Month name, day of month, year, time". It seems you want "Month day, year", which is "LL".
Try:
picker.format = 'LL';
formatted = moment(picker.date).format(picker.format);
console.log(formatted);
Outputs (with today's date):
September 15, 2016
Upvotes: 3