Maison > interface Web > js tutoriel > Pourquoi l'instruction « return » de JavaScript échoue-t-elle avec une valeur de retour sur une nouvelle ligne ?

Pourquoi l'instruction « return » de JavaScript échoue-t-elle avec une valeur de retour sur une nouvelle ligne ?

Mary-Kate Olsen
Libérer: 2024-11-08 04:20:02
original
536 Les gens l'ont consulté

Why Does JavaScript's `return` Statement Fail with a Return Value on a New Line?

Pourquoi l'instruction Return de Javascript échoue avec la valeur de retour sur une nouvelle ligne

Considérez le code JavaScript ci-dessous :

<code class="javascript">function correct() {
    return 15;
}

function wrong() {
    return
          15;
}

console.log("correct() called : "+correct());
console.log("wrong() called : "+wrong());</code>
Copier après la connexion

Dans cet exemple, corrigez () renvoie correctement 15, tandis que false() renvoie inexplicablement undéfini. Ce comportement est distinct des autres langages de programmation. L'implémentation alternative suivante de false() corrige le problème :

<code class="javascript">function wrong() {
    return(
          15);
}</code>
Copier après la connexion

Pourquoi cela se produit-il ?

Les interprètes JS insèrent éventuellement des points-virgules à certaines nouvelles lignes lorsqu'ils le jugent nécessaire. Cependant, leur jugement peut différer de ce qui est prévu.

Lorsqu'une instruction return est suivie d'une nouvelle ligne, l'interpréteur JS insère un point-virgule après l'instruction return. Cela entraîne la modification du code de la fonction incorrecte en :

<code class="javascript">function wrong() {
    return;
          15;
}</code>
Copier après la connexion

Ceci est désormais incorrect.

En revanche, la version modifiée de incorrect() avec les parenthèses ajoutées démarre une expression avec une parenthèse ouverte. L'interpréteur JS le reconnaît et s'abstient d'insérer un point-virgule, préservant ainsi le comportement souhaité.

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