Вы можете начать с Функции даты / времени JavaScript , чтобы получить номер дня:
var theDate = myDateObj.GetDate(); // returns 1-31
Затем вам нужно будет написать правило, чтобы получить правильный суффикс.В большинстве случаев это будет th
, за исключением исключений.Какие исключения?1, 21, 31 = st
, 2, 22 = nd
, 3, 23 = rd
, все остальное - th
.Таким образом, мы можем использовать мод %
, чтобы проверить, заканчивается ли он 1, 2 или 3:
var nth = '';
if (theDate > 3 && theDate < 21) // catch teens, which are all 'th'
nth = theDate + 'th';
else if (theDate % 10 == 1) // exceptions ending in '1'
nth = theDate + 'st';
else if (theDate % 10 == 2) // exceptions ending in '2'
nth = theDate + 'nd';
else if (theDate % 10 == 3) // exceptions ending in '3'
nth = theDate + 'rd';
else
nth = theDate + 'th'; // everything else
Вот рабочая демонстрация, показывающая окончания для 1-31: http://jsfiddle.net/6Nhn8/
Или вы можете быть скучным и использовать библиотеку : -)