Maison > interface Web > js tutoriel > Comment puis-je créer des objets JavaScript avec des noms de propriétés dynamiques au moment de l'exécution ?

Comment puis-je créer des objets JavaScript avec des noms de propriétés dynamiques au moment de l'exécution ?

Linda Hamilton
Libérer: 2024-11-30 13:15:13
original
600 Les gens l'ont consulté

How Can I Create JavaScript Objects with Dynamic Property Names at Runtime?

Utilisation de noms de propriétés dynamiques pour la création d'objets

En programmation, il peut être utile de créer des objets avec des noms de propriétés qui ne sont connus qu'au moment de l'exécution. Cet article aborde le défi de l'initialisation d'un objet avec des noms de clés indirects (non littéraux).

Le problème : les noms de propriétés statiques

Traditionnellement, les objets JavaScript sont initialisés avec des noms de propriétés fixes et littéraux :

var myAppConfig = {
    iconMap: {
        "phone-type": "icon-phone",
        "agent-type": "icon-headphones"
    }
};
Copier après la connexion

Cependant, dans certains scénarios, des noms de propriétés dynamiques sont requis. Par exemple, les noms de propriétés peuvent être stockés dans un objet différent.

Utilisation des noms de propriétés calculés ES6

Si vous utilisez ES6 ou un transpileur comme Babel, vous pouvez utiliser des noms de propriétés calculés :

var iconMap = {
    [KEYS.PHONE_TYPE]: 'icon-phone',
    [KEYS.AGENT_TYPE]: 'icon-headphones'
};
Copier après la connexion

Dans cette syntaxe, le nom de la propriété est mis entre crochets et évalué comme une expression. La valeur de KEYS.PHONE_TYPE est utilisée comme nom de propriété pour la première paire clé-valeur.

Sortie :

En conséquence, l'objet iconMap sera initialisé avec les noms de propriétés dynamiques attendus :

{
    'phone-type': 'icon-phone',
    'agent-type': 'icon-headphones'
}
Copier après la connexion

Cette approche vous permet de créer des objets avec des noms de propriété non littéraux au moment de l'exécution, offrant ainsi une plus grande flexibilité et un plus grand code adaptabilité.

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