Les accesseurs de propriétés en javascript

Il y a deux manière d’accéder aux propriétés d’un objet en javascript :

  • La notation par point :
const user = {
  firstName: "John",
  lastName: "Doe"
};

console.log(user.firstName); // "John"
  • La notation avec crochets
const user = {
  firstName: "John",
  lastName: "Doe"
};

console.log(user["firstName"]); // "John"

La notation par point est la plus souvent utilisée car plus courte et plus facile à lire.

Il existe cependant deux cas de figure ou la notation avec crochets est indispensable :

  • Lorsque le nom de la propriété contient un caractère spécial :
const user = {
  "first-name": "John", // ici le caractère spécial est le tiret
  lastName: "Doe"
};

console.log(user["first-name"]); // John

console.log(user.first-name); // NaN
  • Lorsque l’on veut accéder à la valeur d’une propriété mais que le nom de cette propriété est stocké dans une variable.
const user = {
  firstName: "John",
  lastName: "Doe"
};

let userInfo = "firstName";

console.log(user[userInfo]); // "John"

let userInfo = "lastName";

console.log(user[userInfo]); // "Doe"

La notation par crochets est plus de flexible car la valeur à l’intérieur des crochets peut être une chaîne de caractère ou bien une variable.

On préférera quand même la notation par point lorsque c’est possible pour les raisons évoquées plus haut.

Laisser un commentaire