Skip to content

Instantly share code, notes, and snippets.

@montanaflynn
Last active August 29, 2015 14:08
Show Gist options
  • Save montanaflynn/97af56099dc882a1784c to your computer and use it in GitHub Desktop.
Save montanaflynn/97af56099dc882a1784c to your computer and use it in GitHub Desktop.
Humanize dates in vanilla JavaScript
console.log(fancyDate(556095600000))
// August 16th, 1987
function fancyDate(input) {
var input = new Date(input)
var monthNames = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]
var monthName = monthNames[input.getMonth()]
var day = input.getDate()
if (day > 3 && day < 21) {
date = day + "th"
} else {
switch (day % 10) {
case 1:
date = day + "st"
break;
case 2:
date = day + "nd"
break;
case 3:
date = day + "rd"
break;
default:
date = day + "th"
break;
}
}
var year = input.getFullYear()
return monthName + " " + date + ", " + year
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment