Maison >interface Web >js tutoriel >Accesseurs de propriété
En JavaScript, les accesseurs de propriétés sont des mécanismes qui permettent d'accéder aux propriétés d'un objet. Il existe deux manières principales de procéder : la notation par points et la notation par crochets.
La notation par points est le moyen le plus courant d'accéder aux propriétés. Vous utilisez simplement un point (.) suivi du nom de la propriété.
La notation entre crochets est utile lorsque le nom de la propriété est dynamique ou n'est pas un identifiant valide (par exemple, il contient des espaces ou des caractères spéciaux). Vous utilisez des crochets ([]) et transmettez le nom de la propriété sous forme de chaîne
Le langage fournit une syntaxe connue sous le nom de notation littérale d'objet pour créer rapidement des objets. Les littéraux d’objet sont désignés par des accolades. L'exemple suivant crée un objet vide sans propriétés.
var animal = {};
À l'intérieur des accolades, les propriétés et leurs valeurs sont spécifiées sous la forme d'une liste de paires clé/valeur.
Les clés peuvent être des chaînes ou des identifiants, tandis que les valeurs peuvent être n'importe quelle expression valide. La liste des paires clé/valeur est délimitée par des virgules, chaque clé et valeur étant séparées par deux points.
L'exemple suivant crée un objet avec trois propriétés en utilisant la notation littérale.
La première propriété, animal, détient le numéro un.
La deuxième propriété, Dolphin, est spécifiée à l'aide d'une chaîne et stocke également une valeur de chaîne. La troisième propriété, mammifère, stocke un objet vide.
var animal = { dolphin: 1, "swim": "some string", mammal: { } };
Chaque propriété a été écrite sur une ligne distincte et en retrait. L'objet entier aurait pu être écrit sur une seule ligne, mais le code est plus lisible dans ce format. Cela est particulièrement vrai pour les objets possédant de nombreuses propriétés ou les objets imbriqués.
La première, et la plus courante, est connue sous le nom de notation par points.
Sous notation par points, on accède à une propriété en donnant le nom de l'objet hôte, suivi d'un point (ou d'un point), suivi du nom de la propriété.
La notation par points est le moyen le plus courant d'accéder aux propriétés. Vous utilisez simplement un point (.) suivi du nom de la propriété. Par exemple :
L'exemple suivant montre comment la notation par points est utilisée pour lire et écrire dans une propriété. Si objet.dolphin
détenait initialement la valeur un, puis sa valeur deviendrait deux après l'exécution de cette instruction.
var animal = {};
La syntaxe d'accès aux propriétés des objets est connue sous le nom de notation entre crochets. En notation entre crochets, le nom de l'objet est suivi d'un ensemble de crochets.
À l'intérieur des crochets, le nom de la propriété est spécifié sous la forme d'une chaîne.
L'exemple précédent de notation par points a été réécrit ci-dessous pour utiliser la notation par crochets. Bien que le code puisse sembler différent, il est fonctionnellement équivalent à l'exemple précédent.
var animal = { dolphin: 1, "swim": "some string", mammal: { } };La
Notation entre crochets est plus expressive que la notation par points car elle permet à une variable de spécifier tout ou partie du nom de la propriété.
Ceci est possible car l'interpréteur JavaScript convertit automatiquement l'expression entre crochets en chaîne, puis récupère la propriété correspondante.
L'exemple suivant montre comment les noms de propriétés peuvent être créés à la volée en utilisant la notation entre crochets. Dans l'exemple, le nom de la propriété foo est créé en concaténant le contenu de la variable d, avec la chaîne "dolphin".
animal.dolphin = animal.dolphin + 1;La
Notation entre crochets permet également aux noms de propriétés de contenir des caractères qui sont interdits en notation par points.
Par exemple, la déclaration suivante est tout à fait légale entre parenthèses. Cependant, si vous essayez de créer le même nom de propriété en notation par points, vous rencontrerez une erreur de syntaxe.
object["dolphin"] = object["dolphin"] + 1;
Les propriétés des objets imbriqués sont accessibles en enchaînant les références de points et/ou de crochets.
Par exemple, l'objet suivant contient un objet imbriqué nommé dauphin, qui contient un autre objet nommé mammifère, qui possède une propriété nommée années qui contient la valeur un.
var d = "d"; object[d + "dolphin"] = "bar";
Les expressions suivantes accèdent à la propriété imbriquée, années. La première expression utilise la notation par points, tandis que la deuxième expression utilise la notation entre crochets.
La troisième expression combine les deux notations pour obtenir le même résultat.
object["!@#$%^&*()."] = true;
Des expressions comme celles présentées dans l'exemple précédent peuvent entraîner une baisse des performances si elles sont mal utilisées.
L'évaluation de chaque expression de point ou de crochet prend du temps.
Si la même propriété est utilisée plusieurs fois, il est alors plus logique d'accéder à la propriété une fois, puis de stocker la valeur dans une variable locale pour toutes les utilisations futures. L'exemple suivant utilise bar plusieurs fois dans une boucle. Cependant, au lieu de perdre du temps à calculer encore et encore la même valeur, bar est stocké dans une variable locale.
var animal = {};
Lorsqu'une fonction est utilisée comme propriété d'objet, elle est appelée une méthode. Comme les propriétés, les méthodes peuvent également être spécifiées en notation littérale d’objet. L'exemple suivant montre comment cela est accompli.
var animal = { dolphin: 1, "swim": "some string", mammal: { } };Les
Les méthodes peuvent également être invoquées en utilisant la notation par points et crochets.
L'exemple suivant invoque la méthode sum() de l'exemple précédent en utilisant les deux notations.
animal.dolphin = animal.dolphin + 1;
La notation littérale d'objet est utile pour créer de nouveaux objets, mais elle ne peut pas ajouter de propriétés ou de méthodes aux objets existants.
Heureusement, ajouter de nouvelles données à un objet est aussi simple que créer une instruction d'affectation.
L'exemple suivant crée un objet vide.
Deux propriétés, dauphin et mammifère, et une méthode, années, sont ensuite ajoutées à l'aide d'instructions d'affectation.
Notez que cet exemple utilise la notation par points, mais la notation entre crochets fonctionnerait également.
object["dolphin"] = object["dolphin"] + 1;
Résumé
Les objets sont des types de données composites construits à partir de primitives et d'autres objets. Les éléments constitutifs d’un objet sont communément appelés champs ou propriétés. Les propriétés sont utilisées pour décrire certains aspects d'un objet. Par exemple, une propriété peut décrire la longueur d’une liste, la couleur d’un chien ou la date de naissance d’une personne.
La syntaxe objet de JavaScript est donc cruciale à comprendre, car elle sert de fondement au langage.
Comme vous devez d'abord comprendre les objets avant de pouvoir comprendre la programmation orientée objet.
Bon codage !
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!