Fermer

septembre 26, 2022

Astuce : comment convertir des nombres en ordinaux en JavaScript


Dans ce didacticiel, vous apprendrez à convertir des nombres en ordinaux en JavaScript. Obtenir l’ordinal d’un nombre vous permet de l’afficher dans un format lisible par l’homme.

Que sont les ordinaux ?

Les ordinaux définissent les nombres comme faisant partie d’un ordre ou d’une séquence. Les mots « premier », « deuxième » et « troisième » sont tous des exemples d’ordinaux. Lorsque vous utilisez des nombres pour afficher les résultats d’un graphique, les jours du mois ou un classement, vous devrez souvent utiliser des ordinaux.

Les nombres peuvent être utilisés pour afficher de nombreux types de données et résultats. Lorsque des chiffres sont présentés aux utilisateurs, ils doivent souvent être présentés dans un format plus lisible, comme l’ajout d’un suffixe ordinal (« 12 juin » plutôt que « 12 juin », par exemple).

Règles de suffixe ordinal en anglais

Voyons comment les ordinaux sont utilisés en anglais. Les ordinaux anglais suivent un ensemble de règles prévisibles, sinon magnifiquement simples :

  • « st » est ajouté à 1 et aux nombres supérieurs d’un à un multiple de dix, sauf pour 11 et aux nombres supérieurs de 11 à un multiple de 100. Par exemple, 1er, 21e, 31e, etc. … mais 11e, 111e , etc.

  • « nd » est ajouté à 2 et aux nombres supérieurs de deux à un multiple de dix, sauf pour 12 et aux nombres supérieurs de 12 à un multiple de 100. Par exemple, 2e, 22e, 32e, etc. … mais 12e, 112e , etc.

  • « rd » est ajouté à 3 et aux nombres qui sont trois supérieurs à un multiple de dix, à l’exception de 13 et des nombres qui sont 13 supérieurs à un multiple de 100. Par exemple, 3e, 23e, 33e, etc. … mais 13e, 113e , etc.

  • « th » est ajouté à tout le reste. Par exemple, le 24.

Comment obtenir l’ordinal d’un nombre

Pour obtenir l’ordinal d’un nombre, vous pouvez utiliser la fonction suivante :

function getOrdinal(n) {
  let ord = 'th';

  if (n % 10 == 1 && n % 100 != 11)
  {
    ord = 'st';
  }
  else if (n % 10 == 2 && n % 100 != 12)
  {
    ord = 'nd';
  }
  else if (n % 10 == 3 && n % 100 != 13)
  {
    ord = 'rd';
  }

  return ord;
}

La fonction getOrdinal accepte un argument qui est un nombre et renvoie l’ordinal de ce nombre. Comme la plupart des ordinaux se terminent par « th », la valeur par défaut de ord est réglé sur th. Ensuite, vous testez le nombre dans différentes conditions et modifiez l’ordinal si nécessaire.

Vous remarquerez que dans chacune des conditions, le reste (%) opérateur est utilisé. Cet opérateur renvoie la valeur restante de la division de l’opérande gauche par l’opérande droit. Par exemple, 112 % 100 Retour 12.

Pour tester si le nombre doit avoir l’ordinal stvous vérifiez si n est un plus grand qu’un multiple de dix (n % 10 == 1qui inclut 1 lui-même), mais n’est pas 11 supérieur à un multiple de 100 (n % 100 != 11qui comprend 11 lui-même).

Pour tester si le nombre doit avoir l’ordinal ndvous vérifiez si n est 2 supérieur à un multiple de dix (n % 10 == 2 qui comprend 2 lui-même), mais n’est pas 12 supérieur à un multiple de 100 (n % 100 != 12qui comprend 12 lui-même).

Pour tester si le nombre doit avoir l’ordinal rdvous vérifiez si n est 3 supérieur à un multiple de dix (n % 10 == 3qui comprend 3 lui-même), mais n’est pas 13 supérieur à un multiple de 100 (n % 100 != 13qui comprend 13 lui-même).

Si toutes les conditions sont fausses, alors la valeur de ord restes th.

Vous pouvez le tester en direct avec la démo CodePen suivante.

Voir le stylo
Obtenir l’ordinal d’un nombre
par SitePoint (@SitePoint)
sur CodePen.

Conclusion

Dans ce didacticiel, vous avez appris à récupérer l’ordinal d’un nombre. Les ordinaux peuvent être utilisés dans divers cas, tels que l’affichage de dates ou le classement dans des formats lisibles par l’homme.

Si vous avez trouvé cet article utile, vous pouvez également profiter de ce qui suit :




Source link

septembre 26, 2022