Determine ordinal for a number

Language: JavaScript

// http://en.wikipedia.org/wiki/Ordinal_number_(linguistics)

function toOrdinal(n) {
  var tens = Math.round((n % 100) / 10);
  var ones = n % 10;
  var suffix = 'th';
  if (tens != 1) {
    switch(ones) {
      case 1:
        suffix = 'st';
        break;
      case 2:
        suffix = 'nd';
        break;
      case 3:
        suffix = 'rd';
        break;
    }
  }
  return n + suffix;
}
Reveal More
Added over 1 year ago by Segal-avatar_normal zdzolton

Refactorings

Re: Determine ordinal for a number

Refactoring of: Determine ordinal for a number

Language: JavaScript

// http://en.wikipedia.org/wiki/Ordinal_number_(linguistics)

function toOrdinal(n) {
  function suffix(tens, ones) {
    if (tens != 1) {
      switch(ones) {
        case 1: return 'st';
        case 2: return 'nd';
        case 3: return 'rd';
      }
    }
    return 'th';
  }
  return n + suffix(Math.round((n % 100) / 10), n % 10);
}
Reveal More
Added over 1 year ago by Segal-avatar_normal zdzolton