Maison >interface Web >js tutoriel >Les virgules finales dans les tableaux et objets JavaScript font-elles officiellement partie de la norme ?

Les virgules finales dans les tableaux et objets JavaScript font-elles officiellement partie de la norme ?

DDD
DDDoriginal
2024-11-03 02:37:29423parcourir

Are Trailing Commas in JavaScript Arrays and Objects Officially Part of the Standard?

Tableaux et objets délimités par des virgules en JavaScript : est-ce standard ?

Traditionnellement en JavaScript, il était entendu que les virgules de fin dans les tableaux et les objets étaient acceptables mais pas obligatoires. Cependant, certaines préoccupations ont été soulevées quant à leur statut exact dans la spécification JavaScript.

Les arguments en faveur de la normalisation

Lors de l'examen de la spécification ECMAScript 5, il devient évident que les virgules de fin font en fait partie de la norme. La section 11.1.5 définit clairement la syntaxe des littéraux d'objet comme :

ObjectLiteral :
    { }
    { PropertyNameAndValueList }
    { PropertyNameAndValueList , }

Cela indique que les virgules de fin sont explicitement autorisées dans les littéraux d'objet.

Les tableaux suivent le modèle

La section 11.1.4 de la spécification ECMAScript 5 définit de la même manière les littéraux de tableau comme :

ArrayLiteral :
    [ Elisionopt ]
    [ ElementList ]
    [ ElementList , Elision_opt ]

Notamment, la partie Elision_opt est définie comme contenant des virgules de fin, ce qui les rend également standard dans les tableaux.

Perspective historique

Il est intéressant de noter que même si cette fonctionnalité est nouvelle dans ECMAScript 5, elle est présente dans les tableaux depuis ECMAScript 3. La définition des littéraux de tableau dans ECMAScript 3 est :

ArrayLiteral :
    [ }
    { ElementList }

Ici, la virgule de fin est expressément autorisée.

Compatibilité des navigateurs

Bien que les virgules de fin aient été standardisées en JavaScript , il est important de reconnaître que les navigateurs plus anciens comme IE8 peuvent ne pas les prendre entièrement en charge. Dans la plupart des cas, les navigateurs modernes tels que Chrome et Firefox géreront correctement les virgules de fin dans les tableaux et les objets.

Conclusion

En conclusion, les virgules de fin dans les tableaux et les objets sont fait partie intégrante de la spécification JavaScript. Bien qu'ils ne soient pas universellement pris en charge par les anciens navigateurs, leur utilisation est recommandée dans le développement JavaScript moderne afin d'améliorer la lisibilité et la maintenabilité du code.

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!

Déclaration:
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