Maison >interface Web >js tutoriel >Pouvez-vous ajouter dynamiquement des propriétés aux objets JavaScript ?

Pouvez-vous ajouter dynamiquement des propriétés aux objets JavaScript ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-25 02:07:08231parcourir

Can You Dynamically Add Properties to JavaScript Objects?

Ajout dynamique de propriétés dans les objets JavaScript

Cette enquête explore la possibilité d'ajouter dynamiquement des propriétés à un objet JavaScript après sa création initiale, en particulier lorsque les noms de propriétés sont inconnus jusqu'à l'exécution.

Objet initial Structure

Considérons un objet défini comme suit :

var data = {
    'PropertyA': 1,
    'PropertyB': 2,
    'PropertyC': 3
};

Ajout de propriété dynamique

La question se pose de savoir s'il est possible d'ajouter davantage propriétés à cet objet de manière dynamique, avec des noms déterminés lors de l'exécution. Supposons que nous ayons une variable propName qui stocke un nom de propriété dérivé de l'entrée utilisateur. Comment peut-on ajouter une nouvelle propriété portant ce nom à l'objet de données ?

Solution

Oui, il est en effet possible d'ajouter dynamiquement des propriétés aux objets JavaScript. Pour ce faire, vous pouvez utiliser la notation entre crochets pour accéder aux propriétés par nom :

var propName = 'Property' + someUserInput
data[propName] = 4;

En mettant le nom de la propriété entre crochets, nous pouvons accéder et définir les propriétés de manière dynamique.

Exemple

Considérez l'exemple fourni dans la question :

var propName = 'Property' + 'Z'
data[propName] = 4;

// dialog box with 4 in it
alert(data.PropertyD);
alert(data["PropertyD"]);

Dans Dans cet exemple, nous ajoutons dynamiquement une propriété « PropertyZ » à l'objet de données, qui est ensuite accessible en utilisant la notation entre crochets ou par points.

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