Ce n'est pas un problème avec le point-virgule, mais s'il n'y a pas de blocage du signe ;, l'interprète fusionne directement les deux instructions en :
var xx = function(){}[1,2,3].aa(22);
Faites particulièrement attention lorsque vous utilisez des instructions commençant par () et [], car ces deux opérateurs seront d'abord combinés avec l'expression précédente et le signe ; ne peut pas être omis
Dans certains cas, le signe « ; » n'est pas nécessaire, comme :
var a = 1, b=2
a++
b++
Cela ne signalera pas d'erreur
Comme js n'explique pas clairement un tel comportement et que la page est facile à confondre, l'approche recommandée est généralement la suivante : Que cela soit nécessaire ou non, vous feriez mieux d'ajouter une phrase à la fin du séparateur ";" à moins que vous sachiez exactement quel sera le résultat (voulez-vous) C'est ce qu'on appelle la meilleure pratique
Ce n'est pas un problème avec le point-virgule,
mais s'il n'y a pas de blocage du signe ;, l'interprète fusionne directement les deux instructions en :
Faites particulièrement attention lorsque vous utilisez des instructions commençant par () et [], car ces deux opérateurs seront d'abord combinés avec l'expression précédente et le signe ; ne peut pas être omis
Dans certains cas, le signe « ; » n'est pas nécessaire, comme :
Cela ne signalera pas d'erreur
Comme js n'explique pas clairement un tel comportement et que la page est facile à confondre, l'approche recommandée est généralement la suivante :
.Que cela soit nécessaire ou non, vous feriez mieux d'ajouter une phrase à la fin du séparateur ";" à moins que vous sachiez exactement quel sera le résultat (voulez-vous)
C'est ce qu'on appelle la meilleure pratique
function(){}[1,2,3] renvoie undéfini
Le point-virgule ici devrait indiquer la fin de cette déclaration, n'est-ce pas ?
Je pense qu'on peut le dire quand on l'écrit comme ça.