Js object

De The Linux Craftsman
Aller à la navigation Aller à la recherche

Introduction

Concrètement, un objet est une structure de données valuées et cachées qui répond à un ensemble de messages. Cette structure de données définit son état tandis que l'ensemble des messages qu'il comprend décrit son comportement :

  • Les données — ou champs — qui décrivent sa structure interne sont appelées ses attributs ;
  • L'ensemble des messages forme ce que l'on appelle l'interface de l'objet ; c'est seulement au travers de celle-ci que les objets interagissent entre eux. La réponse à la réception d'un message par un objet est appelée une méthode (méthode de mise en œuvre du message) ; elle décrit quelle réponse doit être donnée au message.

Certains attributs et/ou méthodes (ou plus exactement leur représentation informatique) sont cachés : c'est le principe d'encapsulation. Ainsi, le programme peut modifier la structure interne des objets ou leurs méthodes associées sans avoir d'impact sur les utilisateurs de l'objet.

Wikipedia

Implémentation

Définition

La définition d'un objet en JavaScript se fait grâce au mot clé function

function Rectangle(x, y, largeur, hauteur){
...
}

On peut remarquer que:

  • Rectangle débute par un R majuscule → cela permet de différencier les fonction basique des objets.
  • cette fonction prend en paramètres quatre valeurs: x, y, largeur et hauteur.

Les attributs

L'objet précédent est vide, nous allons lui ajouter quelques attributs:

function Rectangle(x, y, largeur, hauteur) {
    this.x = x;
    this.y = y;
    this.largeur= largeur;
    this.hauteur= hauteur;
}

Instanciation

L'instanciation se fait grâce au mot clé new:

Différence entre définition et instanciation

Mise en œuvre

Les attributs

Pour déclarer un attribut, il faut utiliser le mot clé

this

Il en est de même pour accéder aux attribut à l'intérieur de l'objet.

Prenons un exemple: