Je reconstruis un ancien projet Java en Javascript, et je me suis rendu compte qu'il n'y avait pas de bonne façon de faire des énumérations dans JS.Enums en Javascript avec ES6
Le meilleur que je peux trouver est:
const Colors = {
RED: Symbol("red"),
BLUE: Symbol("blue"),
GREEN: Symbol("green")
};
Object.freeze(Colors);
Le const
garde Colors
d'être réaffectés, et le gel empêche les touches et muter des valeurs. J'utilise des symboles de sorte que Colors.RED
ne soit pas égal à 0
, ou toute autre chose en dehors d'elle-même.
Y at-il un problème avec cette formulation? Y a-t-il un meilleur moyen?
(Je sais que cette question est un peu une répétition, mais tous les previous Q/As sont assez vieux, et ES6 nous donne quelques nouvelles fonctionnalités.)
ce serait une approche parfaite ES6. Vous n'avez pas à le geler – Nirus
@Nirus vous le faites, si vous ne voulez pas qu'il soit modifié. – zerkms
Avez-vous remarqué [cette réponse] (https://stackoverflow.com/a/30058506/1048572)? – Bergi