Objets

Frontend SELF FR
Niveau 36 , Leçon 0
Disponible

6.1 Création d'objets

Les objets sont l'un des principaux types de données en JavaScript et sont largement utilisés pour stocker et gérer des données. Un objet est une collection de propriétés, où chaque propriété est composée d'une clé (nom) et d'une valeur. Dans cette leçon, nous allons voir comment créer des objets, ainsi que comment accéder à leurs propriétés et méthodes.

1. Littéral d'objet

Le moyen le plus courant de créer un objet en JavaScript est d'utiliser un littéral d'objet.

Dans cet exemple, nous avons créé un objet person avec quatre propriétés : name, age, isStudent et greet.

JavaScript
    
      let person = {
        name: 'John',
        age: 30,
        isStudent: false,
        greet: function() {
          return 'Hello!';
        }
      };
    
  

2. Constructeur Object

Les objets peuvent également être créés en utilisant le constructeur Object().

Ce moyen est équivalent à la création d'un objet avec un littéral d'objet, mais plus verbeux :

JavaScript
    
      let person = new Object();
      person.name = 'John';
      person.age = 30;
      person.isStudent = false;
      person.greet = function() {
        return 'Hello!';
      };
    
  

3. Fonction constructeur

Une fonction constructeur permet de créer plusieurs instances d'objets avec les mêmes propriétés et méthodes.

Dans cet exemple, la fonction constructeur Person() est utilisée pour créer les objets john et jane avec les mêmes propriétés et méthodes :

JavaScript
    
      function Person(name, age, isStudent) {
        this.name = name;
        this.age = age;
        this.isStudent = isStudent;
        this.greet = function() {
          return 'Hello!';
        };
      }

      let john = new Person('John', 30, false);
      let jane = new Person('Jane', 25, true);
    
  

4. Méthode Object.create()

La méthode Object.create() crée un nouvel objet avec le prototype et les propriétés spécifiés.

Dans cet exemple, l'objet john est créé sur la base du prototype personPrototype :

JavaScript
    
      let personPrototype = {
        greet: function() {
          return 'Hello!';
        }
      };

      let john = Object.create(personPrototype);
      john.name = 'John';
      john.age = 30;
      john.isStudent = false;
    
  

6.2 Accès aux propriétés et méthodes

1. Accès via le point

Le moyen le plus courant d'accéder aux propriétés et méthodes d'un objet est par le point :

JavaScript
    
      let person = {
        name: 'John',
        age: 30,
        greet: function() {
          return 'Hello!';
        }
      };

      console.log(person.name);  // Affichera : John
      console.log(person.age);   // Affichera : 30
      console.log(person.greet()); // Affichera : Hello!
    
  

2. Accès via les crochets

Les propriétés d'un objet peuvent également être accessibles via des crochets. Ce moyen est utile si le nom de la propriété est stocké dans une variable ou contient des espaces ou des caractères spéciaux :

JavaScript
    
      let person = {
        'first name': 'John',
        age: 30,
        greet: function() {
          return 'Hello!';
        }
      };

      console.log(person['first name']); // Affichera : John
      console.log(person['age']);        // Affichera : 30

      let propertyName = 'greet';
      console.log(person[propertyName]()); // Affichera : Hello!
    
  

3. Modification et ajout de propriétés

Les propriétés d'un objet peuvent être modifiées ou ajoutées à tout moment :

JavaScript
    
      let person = {
        name: 'John',
        age: 30
      };

      // Modification d'une propriété existante
      person.age = 31;
      console.log(person.age); // Affichera : 31

      // Ajout d'une nouvelle propriété
      person.isStudent = false;
      console.log(person.isStudent); // Affichera : false
    
  

4. Suppression de propriétés

Les propriétés d'un objet peuvent être supprimées avec l'opérateur delete :

JavaScript
    
      let person = {
        name: 'John',
        age: 30,
        isStudent: false
      };

      delete person.isStudent;
      console.log(person.isStudent); // Affichera : undefined
    
  

6.3 Itération sur les propriétés d'un objet

1. Boucle for...in

La boucle for...in permet de parcourir toutes les propriétés énumérables d'un objet :

JavaScript
    
      let person = {
        name: 'John',
        age: 30,
        isStudent: false
      };

      for (let key in person) {
        console.log(`${key}: ${person[key]}`);
      }

      // Affichera :
      // name: John
      // age: 30
      // isStudent: false
    
  

2. Méthode Object.keys()

La méthode Object.keys() renvoie un tableau de toutes les propriétés énumérables d'un objet :

JavaScript
    
      let person = {
        name: 'John',
        age: 30,
        isStudent: false
      };

      let keys = Object.keys(person);
      console.log(keys); // Affichera : ['name', 'age', 'isStudent']
    
  

3. Méthode Object.values()

La méthode Object.values() renvoie un tableau des valeurs de toutes les propriétés énumérables d'un objet :

JavaScript
    
      let person = {
        name: 'John',
        age: 30,
        isStudent: false
      };

      let values = Object.values(person);

      console.log(values); // Affichera : ['John', 30, false]
    
  

4. Méthode Object.entries()

La méthode Object.entries() renvoie un tableau de paires [clé, valeur] pour toutes les propriétés énumérables d'un objet :

JavaScript
    
      let person = {
        name: 'John',
        age: 30,
        isStudent: false
      };

      let entries = Object.entries(person);

      console.log(entries); // Affichera : [['name', 'John'], ['age', 30], ['isStudent', false]]
    
  

6.4 Vérification de l'existence de propriétés

1. Opérateur in

L'opérateur in permet de vérifier si une propriété existe dans un objet :

JavaScript
    
      let person = {
        name: 'John',
        age: 30
      };

      console.log('name' in person); // Affichera : true
      console.log('isStudent' in person); // Affichera : false
    
  

2. Méthode hasOwnProperty()

La méthode hasOwnProperty() vérifie si un objet a une propriété spécifiée comme étant la sienne (non héritée) :

JavaScript
    
      let person = {
        name: 'John',
        age: 30
      };

      console.log(person.hasOwnProperty('name')); // Affichera : true
      console.log(person.hasOwnProperty('isStudent')); // Affichera : false
    
  
Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION