javascript - Concernant la question du point-virgule, pourquoi une erreur est-elle signalée sans point-virgule?
高洛峰
高洛峰 2017-05-16 13:42:00
0
3
560

Sortie 2

Supprimez ce point-virgule et une erreur sera signalée

Quelle est la fonction de ce point-virgule ? Pourquoi le supprimer entraîne-t-il une erreur ?

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

répondre à tous(3)
我想大声告诉你

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

.
洪涛

function(){}[1,2,3] renvoie undéfini

刘奇

Le point-virgule ici devrait indiquer la fin de cette déclaration, n'est-ce pas ?

Array.prototype.aa = function(){console.log(2);};

Je pense qu'on peut le dire quand on l'écrit comme ça.

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!