Maison > interface Web > js tutoriel > le corps du texte

Les sauts de ligne peuvent-ils affecter les instructions de retour JavaScript ?

Susan Sarandon
Libérer: 2024-10-24 09:04:30
original
297 Les gens l'ont consulté

Can Line Breaks Affect JavaScript Return Statements?

Comment les sauts de ligne peuvent avoir un impact sur les instructions de retour JavaScript

Les fonctions JavaScript peuvent rencontrer un comportement inattendu lorsqu'un saut de ligne se produit entre l'instruction de retour et l'objet il tente de revenir. Ce problème est dû au mécanisme d'insertion automatique de point-virgule (ASI) de JavaScript.

Exemple de code :

Considérez le code suivant :

<code class="javascript">function foo1() {
    return {msg: "hello1"};
}

function foo2() {
    return
    {msg: "hello2"};
}</code>
Copier après la connexion

Quand exécuté, ce code affiche :

foo1 =  {"msg":"hello1"}
foo2 =  undefined
Copier après la connexion

Explication :

La différence entre ces fonctions est que dans foo2, le {msg: 'hello2'} est placé sur une nouvelle ligne. JavaScript a tendance à utiliser les points-virgules même lorsqu'ils sont omis, ce qui fait que le saut de ligne est interprété comme un séparateur d'instructions. En conséquence, foo2 renvoie undefined au lieu de l'objet prévu.

Solution :

Pour éviter ce problème, le code peut être modifié pour conserver l'objet sur le même ligne comme instruction return. Alternativement, l'opérateur de regroupement peut être utilisé pour définir explicitement l'objet en tant qu'expression dans la fonction :

<code class="javascript">function foo2() {
    return ({msg: "hello2"});
}</code>
Copier après la connexion

Avec ce changement, foo2 renverra correctement l'objet souhaité.

Considérations :

L'utilisation de l'opérateur de regroupement pour des raisons esthétiques est une question de préférence personnelle. Cela peut améliorer la lisibilité, en particulier lorsqu’il s’agit de gros blocs de code. Cependant, il est important de noter que l'opérateur de regroupement n'évalue que la dernière expression du groupe.

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
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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!