La plurification de chaînes de caractères en JavaScript

JavaScriptJavaScriptBeginner
Pratiquer maintenant

This tutorial is from open-source community. Access the source code

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, nous allons explorer le concept de la plurification de chaînes de caractères en JavaScript. Vous allez apprendre à utiliser une fermeture pour définir une fonction qui peut renvoyer la forme singulière ou plurielle d'un mot en fonction d'un nombre d'entrée. De plus, vous aurez l'occasion de pratiquer l'utilisation d'arguments optionnels et de dictionnaires pour personnaliser le comportement de la fonction. À la fin de ce laboratoire, vous aurez une compréhension solide de la manière de gérer la plurification dans vos projets JavaScript.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic Concepts"]) javascript/BasicConceptsGroup -.-> javascript/variables("Variables") javascript/BasicConceptsGroup -.-> javascript/data_types("Data Types") javascript/BasicConceptsGroup -.-> javascript/arith_ops("Arithmetic Operators") javascript/BasicConceptsGroup -.-> javascript/comp_ops("Comparison Operators") javascript/BasicConceptsGroup -.-> javascript/cond_stmts("Conditional Statements") javascript/BasicConceptsGroup -.-> javascript/str_manip("String Manipulation") javascript/BasicConceptsGroup -.-> javascript/array_methods("Array Methods") subgraph Lab Skills javascript/variables -.-> lab-28548{{"La plurification de chaînes de caractères en JavaScript"}} javascript/data_types -.-> lab-28548{{"La plurification de chaînes de caractères en JavaScript"}} javascript/arith_ops -.-> lab-28548{{"La plurification de chaînes de caractères en JavaScript"}} javascript/comp_ops -.-> lab-28548{{"La plurification de chaînes de caractères en JavaScript"}} javascript/cond_stmts -.-> lab-28548{{"La plurification de chaînes de caractères en JavaScript"}} javascript/str_manip -.-> lab-28548{{"La plurification de chaînes de caractères en JavaScript"}} javascript/array_methods -.-> lab-28548{{"La plurification de chaînes de caractères en JavaScript"}} end

Pluralize String

Pour pluraliser un mot en fonction d'un nombre donné, utilisez la fonction pluralize. Commencez par ouvrir le Terminal/SSH et tapez node. Cette fonction peut renvoyer soit la forme singulière soit la forme plurielle du mot, selon le nombre d'entrée. Vous pouvez également fournir un dictionnaire optionnel pour utiliser des formes plurelles personnalisées.

Pour définir la fonction pluralize, utilisez une fermeture qui prend le mot et une forme plurielle optionnelle. Si l'entrée num est soit -1 soit 1, renvoyez la forme singulière du mot. Sinon, renvoyez la forme plurielle. Si aucune forme plurielle personnalisée n'est fournie, la fonction utilisera la valeur par défaut du mot singulier + s.

Si le premier argument est un objet, la fonction pluralize renvoie une nouvelle fonction qui peut utiliser le dictionnaire fourni pour résoudre la forme plurielle correcte du mot.

Voici la fonction pluralize en action :

const pluralize = (val, word, plural = word + "s") => {
  const _pluralize = (num, word, plural = word + "s") =>
    [1, -1].includes(Number(num)) ? word : plural;
  if (typeof val === "object")
    return (num, word) => _pluralize(num, word, val[word]);
  return _pluralize(val, word, plural);
};

Vous pouvez utiliser la fonction pluralize comme ceci :

pluralize(0, "apple"); // 'apples'
pluralize(1, "apple"); // 'apple'
pluralize(2, "apple"); // 'apples'
pluralize(2, "person", "people"); // 'people'

Si vous avez un dictionnaire de formes plurelles personnalisées, vous pouvez créer une fonction autoPluralize qui utilise automatiquement la forme plurielle correcte pour un mot donné :

const PLURALS = {
  person: "people",
  radius: "radii"
};
const autoPluralize = pluralize(PLURALS);
autoPluralize(2, "person"); // 'people'

Summary

Félicitations! Vous avez terminé le laboratoire Pluralize String. Vous pouvez pratiquer d'autres laboratoires dans LabEx pour améliorer vos compétences.