Maison > interface Web > js tutoriel > Comment fonctionne l'insertion automatique de point-virgule (ASI) de JavaScript : règles et exceptions ?

Comment fonctionne l'insertion automatique de point-virgule (ASI) de JavaScript : règles et exceptions ?

DDD
Libérer: 2024-12-28 04:58:10
original
440 Les gens l'ont consulté

How Does JavaScript's Automatic Semicolon Insertion (ASI) Work: Rules and Exceptions?

ASI en JavaScript : règles et exceptions

L'insertion automatique de point-virgule (ASI) est une fonctionnalité de JavaScript qui ajoute automatiquement des points-virgules à des points spécifiques du code. Comprendre les règles de l'ASI est crucial pour éviter les bogues potentiels.

Déclarations affectées par l'ASI

Les déclarations suivantes sont affectées par l'ASI :

  • Déclarations vides
  • Déclarations de variables (var)
  • Expression déclarations
  • Instructions de flux de contrôle (faire pendant, continuer, pause)
  • Instructions de retour
  • Instructions de lancement

Règles ASI

Règles ASI
  1. ASI est appliqué dans trois domaines principaux cas :

    • Jeton invalide :
    • Lorsqu'un jeton inattendu est rencontré, un point-virgule est inséré avant lui si :
    Le jeton est précédé d'un saut de ligne.
  2. Le jeton est l'accolade fermante }.
  3. Fin du flux d'entrée : Si la fin du flux d'entrée est atteinte sans programme complet, un point-virgule est inséré à la fin.

    • Jetons restreints :
    • Les points-virgules sont automatiquement insérés avant les jetons qui suivent des productions restreintes dans la grammaire. Cela inclut les jetons sans terminateurs de ligne :
    • Mettre à jour les expressions ( , --)
    • Instructions de flux de contrôle (continuer, pause)
    • Instructions de retour
    • Instructions de lancement
    Expressions de fonction génératrice
Rendement expressions

{ 1
2 } 3
Copier après la connexion

Exemple 1 (Jeton invalide) :

{ 1
;2 ;} 3;
Copier après la connexion

ASI transforme ce code en :

a = b
++c
Copier après la connexion

Exemple 2 (Fin de saisie Stream):

a = b;
++c;
Copier après la connexion

ASI ajoute un point-virgule à la fin :

return
  "something";
Copier après la connexion

Exemple 3 (jeton restreint) :

return;
  "something";
Copier après la connexion

ASI insère un point-virgule avant le retour restreint token :

Remarque : Bien que l'ASI puisse être pratique, il est important d'être conscient de son impact potentiel et d'utiliser explicitement des points-virgules pour plus de clarté et de cohérence.

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal