"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Maîtriser les arguments de fonction : moins c'est plus en JavaScript

Maîtriser les arguments de fonction : moins c'est plus en JavaScript

Publié le 2024-11-03
Parcourir:320

Mastering Function Arguments: Less is More in JavaScript

Salut amis développeurs ! ? Aujourd'hui, penchons-nous sur un aspect crucial de l'écriture de JavaScript propre et maintenable : la gestion des arguments de fonction

Le problème avec trop d'arguments

Avez-vous déjà rencontré une fonction qui ressemble à ceci ?

function createMenu(title, body, buttonText, cancellable, theme, fontSize, callback) {
  // ...a whole lot of logic here
}

Si c'est le cas, vous connaissez la douleur d'essayer de se souvenir de l'ordre des arguments, ou pire, du débogage lorsque quelqu'un les mélange inévitablement. ?

La règle des deux arguments

Voici une règle d'or : Essayez de limiter vos fonctions à deux arguments ou moins.
Pourquoi? Voici quelques raisons impérieuses :

  • Testabilité améliorée : moins d'arguments signifie moins de cas de test pour couvrir toutes les possibilités.
  • Lisibilité améliorée : il est plus facile de comprendre l'objectif d'une fonction en un coup d'œil.
  • Charge cognitive réduite : moins de jonglerie mentale avec les paramètres pour les développeurs utilisant la fonction.

Mais que se passe-t-il si j'ai besoin de plus de paramètres ?

Excellente question ! C'est là qu'intervient la magie de la déstructuration des objets. Regardez ceci :

function createMenu({ title, body, buttonText, cancellable, theme = 'light', fontSize = 16, callback = () => {} }) {
  // Your implementation here
}

// Usage
createMenu({
  title: "Settings",
  body: "Adjust your preferences",
  buttonText: "Save",
  cancellable: true
});

Les avantages de cette approche

  • Simule les paramètres nommés : vous pouvez fournir des arguments dans n'importe quel ordre. Auto-documentation : la signature de la fonction montre clairement les propriétés attendues. Valeurs par défaut : définissez facilement les valeurs par défaut pour les paramètres facultatifs. Empêche les effets secondaires : La déstructuration des valeurs primitives des clones, aidant ainsi à éviter les mutations accidentelles. Linter-Friendly : les outils peuvent vous avertir des propriétés inutilisées.

Conseil de pro : TypeScript Boost

Si vous utilisez TypeScript, vous pouvez aller plus loin :

interface MenuOptions {
  title: string;
  body: string;
  buttonText: string;
  cancellable: boolean;
  theme?: 'light' | 'dark';
  fontSize?: number;
  callback?: () => void;
}

function createMenu(options: MenuOptions) {
  // Implementation
}

Cela ajoute la sécurité des types et la saisie semi-automatique, rendant votre code encore plus robuste !

Conclusion

En adoptant ce modèle, vous constaterez que vos fonctions deviennent plus flexibles, plus faciles à utiliser et plus simples à maintenir. Il s'agit d'un petit changement qui peut avoir un impact important sur la qualité de votre code.

Que pensez-vous de cette approche ? Avez-vous d'autres conseils pour gérer les arguments de fonction ? Discutons-en dans les commentaires !

Bon codage ! ?

Déclaration de sortie Cet article est reproduit sur : https://dev.to/56_kode/mastering-function-arguments-less-is-more-in-javascript-7a6?1 En cas de violation, veuillez contacter [email protected] pour supprimer il
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3