toOrdinal method

String toOrdinal()

Returns the ordinal string for this number ("1st", "2nd", "3rd", etc.).

1.toOrdinal() // '1st'
11.toOrdinal() // '11th'
22.toOrdinal() // '22nd'

Implementation

String toOrdinal() {
  final n = toInt();
  if (n % 100 >= 11 && n % 100 <= 13) return '${n}th';
  switch (n % 10) {
    case 1:
      return '${n}st';
    case 2:
      return '${n}nd';
    case 3:
      return '${n}rd';
    default:
      return '${n}th';
  }
}