Définition d'objet JavaScript

Cours recommandés :

Dans JavaScript, les objets sont rois. Si vous comprenez les objets, vous comprenez JavaScript.

  • Dans JavaScript, presque "tout" est un objet. Les chaînes sont des objets (si elles sont new
  • Les booléens sont des objets (si ils sont Les chaînes sont des objets (si elles sont new
  • Les nombres sont des objets (si ils sont Les chaînes sont des objets (si elles sont new
  • Les mots-clés sont définis)
  • Les dates sont toujours des objets
  • Les opérations arithmétiques sont toujours des objets
  • Les expressions régulières sont toujours des objets
  • Les tableaux sont toujours des objets
  • Les fonctions sont toujours des objets

Les objets sont toujours des objets

Toutes les valeurs JavaScript, à l'exception des valeurs primitives, sont des objets.

Valeurs primitives JavaScriptValeurs primitives

Cela signifie les valeurs qui n'ont pas de propriétés ou de méthodes.Types de données primitives

Cela signifie les données qui possèdent des valeurs primitives.

  • "Hello"
  • 3.14
  • false
  • false est toujours false
  • (objet) null est toujours null

JavaScript définit 5 types de données primitives :

Les valeurs primitives sont invariables (elles sont codées en dur, donc elles ne peuvent pas être modifiées).

valeur Supposons que x = 3.14, vous pouvez changer la valeur de x. Mais vous ne pouvez pas changer la valeur de 3.14. Types
Commentaires "Hello" string
"Hello" est toujours "Hello" 3.14 number
3.14 est toujours 3.14 false true
true est toujours true false boolean
false est toujours false false est toujours false null
(objet) null est toujours null (objet) null est toujours null undefined

undefined est toujours undefined

Les objets sont des variables contenant des variables

Exemple

Les variables JavaScript peuvent contenir une seule valeur :

Essayer personnellement

var person = "Bill Gates";

Les objets sont également des variables. Mais les objets peuvent contenir de nombreuses valeurs.Les valeurs sont organiséesNom : Valeur

Exemple

var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"};

Essayer personnellement

Les objets JavaScript sont écrits sous forme de paires (noms et valeurs séparées par des deux points).Noms-valeursune collection.

Propriétés de l'objet

Les noms-valeurs des objets JavaScript sont appeléspropriété

propriété valeur
firstName Bill
lastName Gates
age 62
eyeColor blue

Les objets écrits sous forme de paires nom-valeur sont similaires à :

  • Tableau associatif en PHP
  • Dictionnaire en Python
  • Les tables de hachage en C
  • Les mappings de hash dans Java
  • Les ensembles de hachage dans Ruby et Perl

méthode de l'objet

Les méthodes sont des actions qui peuvent être exécutées sur un objetaction

Les propriétés de l'objet peuvent être des valeurs primitives, d'autres objets et des fonctions.

méthode de l'objetcontientDéfinition de la fonctiondes propriétés de l'objet.

propriété valeur
firstName Bill
lastName Gates
age 62
eyeColor blue
fullName function() {return this.firstName + " " + this.lastName;}

Les objets JavaScript sont des conteneurs de valeurs nommées appelées propriétés et méthodes.

Vous apprendrez plus sur les méthodes dans le prochain chapitre.

Créer des objets JavaScript

Avec JavaScript, vous pouvez définir et créer vos propres objets.

Il existe différentes méthodes pour créer des objets :

  • Définir et créer un seul objet, en utilisant les objets littéraux.
  • Définir et créer un seul objet, en utilisant le mot-clé new.
  • et créer des objets de type constructeur.

Dans ECMAScript 5, vous pouvez également définir un constructeur d'objet via la fonction Object.create() pour créer des objets.

Utilisez les objets littéraux

C'est la manière la plus simple de créer des objets.

Utilisez les objets littéraux pour définir et créer des objets en une seule instruction.

Les objets littéraux sont les accolades {} dans les paires nom: valeur (par exemple age:62).

L'exemple suivant crée également un nouveau objet JavaScript avec quatre propriétés :

Exemple

var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"};

Essayer personnellement

Les espaces et les retours chariots ne sont pas importants. La définition de l'objet peut s'étendre sur plusieurs lignes :

Exemple

var person = {
    firstName:"Bill",
    lastName:"Gates",
    age:62,
    eyeColor:"blue"
};

Essayer personnellement

Utilisez le mot-clé JavaScript new

L'exemple suivant crée également un nouveau objet JavaScript avec quatre propriétés :

Exemple

var person = new Object();
person.firstName = "Bill";
person.lastName = "Gates";
person.age = 50;
person.eyeColor = "blue"; 

Essayer personnellement

Les deux exemples précédents ont le même résultat. Il n'est pas nécessaire d'utiliser new Object()

Pour des raisons de simplicité, de lisibilité et de vitesse d'exécution, utilisez la première méthode de création (méthode de texte d'objet).

Les objets JavaScript sont mutables

Les objets sont mutables : ils sont adressés par référence, pas par valeur.

Si person est un objet, les instructions suivantes ne créeront pas de copie de person :

var x = person;  // Cela ne créera pas une copie de person.

l'objet x pas une copie de person. C'estc'est person.x et person sont les mêmes objets.

Toute modification apportée à x changera person, car x et person sont les mêmes objets.

Exemple

var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"}
var x = person;
x.age = 10;           // Cela changera à la fois x.age et person.age

Essayer personnellement

Remarque :Les variables JavaScript ne sont pas mutables. Ce ne sont que les objets JavaScript qui le sont.