Maison > interface Web > js tutoriel > Quand dois-je utiliser des parenthèses ou des accolades dans les fonctions fléchées JavaScript ?

Quand dois-je utiliser des parenthèses ou des accolades dans les fonctions fléchées JavaScript ?

Patricia Arquette
Libérer: 2024-12-02 08:35:14
original
361 Les gens l'ont consulté

When Should I Use Parentheses vs. Curly Braces in JavaScript Arrow Functions?

Fonctions fléchées en détail

Les fonctions fléchées, introduites dans ES6, sont une syntaxe concise pour définir des fonctions. Ils apparaissent souvent avec des notations différentes, utilisant des accolades ou des parenthèses. Cet article approfondit les distinctions entre ces deux variantes.

Définition des fonctions fléchées

Les fonctions fléchées commencent par un ensemble de paramètres et une grosse flèche (=>). La valeur de retour est ensuite déterminée par le corps, entouré soit par :

  • Parenthèses : Lorsque le corps est constitué d'une seule expression, des parenthèses sont utilisées, par exemple :

    const foo = (params) => (
    <span>
      <p>Content</p>
    </span>
    );
    Copier après la connexion
  • Accolades : Si le corps s'étend sur plusieurs lignes ou contient plusieurs déclarations, des accolades sont requises, par exemple :

    const handleBar = (e) => {
    e.preventDefault();
    dispatch('logout');
    };
    Copier après la connexion

Comprendre les différences

La distinction réside dans la valeur de retour. Les Parenthèses indiquent qu'une seule valeur est renvoyée, tandis que les accolades signifient l'exécution de plusieurs lignes de code ou de plusieurs instructions.

JSX et parenthèses

En JavaScript XML (JSX), comme on le voit dans foo, le corps peut sembler s'étendre sur plusieurs lignes, mais il se compile en fait en un seul élément. C'est pourquoi les parenthèses sont utilisées dans ce cas.

Lignes et parenthèses multiples

Pour éviter toute confusion, voici des exemples de fonctions fléchées qui donnent toutes le même résultat :

const a = (who) => "hello " + who + "!";
const b = (who) => ("hello " + who + "!");
const c = (who) => (
  "hello " + who + "!"
);
const d = (who) => (
  "hello "
    + who
    + "!"
);
const e = (who) => {
  return "hello " + who + "!";
};
Copier après la connexion

Éviter le code Les blocs

Les parenthèses sont également utilisées autour des littéraux d'objet dans les fonctions fléchées pour éviter qu'ils ne soient interprétés comme des blocs de code, par exemple :

const x = () => {} // Does nothing
const y = () => ({}) // returns an object
Copier après la connexion

En conclusion, le choix entre les accolades et Les parenthèses dans les fonctions fléchées dépendent de si vous souhaitez renvoyer une seule valeur ou exécuter plusieurs lignes de code. Comprendre les nuances de ces notations vous aidera à utiliser efficacement les fonctions fléchées dans votre code JavaScript.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal