Table des matières:
- Construire des objets avec des fonctions constructeurs
- Modifier un type d'objet
- Création d'objets avec objet. créer
Vidéo: APPRENDRE LE JAVA #1 - LES BASES & PREREQUIS 2025
Lorsque vous créez des objets avec JavaScript, vous n'êtes pas limité à la création d'objets spécifiques, comme votre guitare, votre voiture, votre chat ou votre sandwich. La vraie beauté des objets est que vous pouvez les utiliser pour créer des types d'objets, à partir desquels d'autres objets peuvent être créés.
Ici, un nouvel objet Personne du type Objet est créé. Cet objet nouvelle personne contient toutes les propriétés et méthodes par défaut du type Object, mais avec un nouveau nom. Vous pouvez ensuite ajouter vos propres propriétés et méthodes à l'objet personne pour le faire décrire spécifiquement ce que vous entendez par personne.
var personne = new Objet (); la personne. yeux = 2; la personne. oreilles = 2; la personne. bras = 2; la personne. mains = 2; la personne. pieds = 2; la personne. jambes = 2; la personne. espèce = "Homo sapien";
Vous avez maintenant défini certaines propriétés spécifiques de l'objet Personne. Imaginez que vous vouliez créer un nouvel objet qui soit une personne spécifique, comme Willie Nelson. Vous pouvez simplement créer un nouvel objet appelé willieNelson et lui donner toutes les mêmes propriétés que l'objet person, plus les propriétés qui rendent Willie Nelson unique.
var willieNelson = new Object (); willieNelson. yeux = 2; willieNelson. oreilles = 2; willieNelson. bras = 2; willieNelson. mains = 2; willieNelson. pieds = 2; willieNelson. jambes = 2; willieNelson. espèce = "Homo sapien"; willieNelson. occupation = "musicien"; willieNelson. ville natale = "Austin"; willieNelson. cheveux = "Long"; willieNelson. genre = "pays";
Cette méthode de définition de l'objet willieNelson est cependant un gaspillage. Cela exige que vous fassiez beaucoup de travail, et rien n'indique ici que Willie Nelson est une personne. Il arrive juste d'avoir toutes les mêmes propriétés qu'une personne.
La solution consiste à créer un nouveau type d'objet, appelé Person, puis à rendre l'objet willieNelson du type Person.
Notez que le nom du type d'objet est toujours en majuscule. Ce n'est pas une exigence, mais c'est une convention presque universelle. Par exemple, vous pouvez dire
var person = new Object ();
ou
var willieNelson = new Personne ();
Construire des objets avec des fonctions constructeurs
Pour créer un nouveau type d'objet, vous définissez une nouvelle fonction constructeur. Les fonctions de constructeur sont formées comme n'importe quelle fonction de JavaScript, mais elles utilisent le mot-clé this pour affecter des propriétés à un nouvel objet. Le nouvel objet hérite alors des propriétés du type d'objet.
Voici une fonction constructeur pour notre type d'objet Personne:
function Person () {this.yeux = 2; ce. oreilles = 2; ce. bras = 2; ce. mains = 2; ce. pieds = 2; ce. jambes = 2; ce. species = "Homo sapien";}
Pour créer un nouvel objet de type Personne maintenant, tout ce que vous devez faire est d'assigner la fonction à une nouvelle variable. Par exemple:
var willieNelson = new Personne ()
L'objet willieNelson hérite des propriétés du type d'objet Person. Même si vous n'avez pas spécifiquement créé de propriétés pour l'objet willieNelson, il contient toutes les propriétés de Person.
Pour tester cela, exécutez ce code dans un navigateur Web.
Héritage fonction de démonstration Person () {this. yeux = 2; ce. oreilles = 2; ce. bras = 2; ce. mains = 2; ce. pieds = 2; ce. jambes = 2; ce. species = "Homo sapien";} var willieNelson = nouvelle Personne (); alerte ("Willie Nelson a" + willieNelson pieds + "pieds!");
Voici le résultat de l'exécution de ce code dans un navigateur.
Modifier un type d'objet
Supposons que vous ayez votre type d'objet Personne, qui sert de prototype pour plusieurs objets. À un certain moment, vous réalisez que la personne, ainsi que tous les objets qui en héritent, devraient avoir quelques propriétés de plus.
Pour modifier un objet prototype, utilisez la propriété prototype que chaque objet hérite de Object.
function Personne () {this. yeux = 2; ce. oreilles = 2; ce. bras = 2; ce. mains = 2; ce. pieds = 2; ce. jambes = 2; ce. species = "Homo sapien";} var willieNelson = nouvelle Personne (); var johnnyCash = new Personne (); var patsyCline = nouvelle personne (); // La personne a besoin de plus de propriétés! La personne. prototype. genoux = 2; La personne. prototype. orteils = 10; La personne. prototype. coudes = 2; // Vérifie les valeurs des objets existants pour le nouveau document de propriétés. écrire (patsyCline, orteils); // renvoie 10
Création d'objets avec objet. créer
Encore une autre façon de créer des objets à partir d'autres objets est d'utiliser l'objet. créer une méthode Cette méthode a l'avantage de ne pas vous obliger à écrire une fonction constructeur. Il copie simplement les propriétés d'un objet spécifié dans un nouvel objet. Lorsqu'un objet hérite d'un autre objet, l'objet dont il hérite s'appelle le prototype.
Cet exemple montre comment Object. create peut être utilisé pour créer l'objet willieNelson à partir d'un prototype.
// crée une Personne générique var Personne = {yeux: 2, bras: 2, pieds: 2} // crée l'objet willieNelson, basé sur Person var willieNelson = Object. créer (Personne); // tester un document de propriété hérité. écrire (WillieNelson.Pieds); // sorties 2
