Easy-Micro

LANGAGE POO JavaScript
Classes Javascript

La programmation orientée objet en Javascript

javascript Manipulez des classes Javascript

La construction d'un objet à la main, par la notation à accolades vue précédemment, convient bien à des objets simples et uniques. Mais vous aurez souvent besoin de beaucoup d'objets du même type. C'est là que les classes sont utiles. Comme expliqué précédemment, une classe est un modèle pour un objet dans le code. Elle permet de construire plusieurs objets du même type (appelés instances de la même classe) plus facilement, rapidement et en toute fiabilité.

class Livre {
    constructor(titre, auteur, pages) {
        this.titre = titre;
        this.auteur = auteur;
        this.pages = pages;
    }
}
Le constructor d'une classe est la fonction qui est appelée quand on crée une nouvelle instance de cette classe avec le mot clé new.

Maintenant que la classe est terminée, vous pouvez créer des instances par le mot clé new :
let monLivre = new Livre("L'Histoire de Tao", "Will Alexander", 250);
Avec une classe Livre, vous pouvez créer rapidement de nouveaux objets Livre. L'opérateur new permet donc de créer une instance d'un certain type d'objet à partir du constructeur qui existe pour celui-ci (natif ou défini par l'utilisateur). > Voir cet exemple Easy-Micro

javascript Méthodes d'instance

Une méthode d'instance est une fonction faisant partie d'une classe

Ajouter une méthode à votre classe
class BankAccount {
    constructor(owner, balance) {
        this.owner = owner;
        this.balance = balance;
    }
    showBalance() {
        console.log("Solde: " + this.balance + " EUR");
    }
}

const compteFB = new BankAccount("François Bisch", 500);

compteFB.showBalance(); // imprime "Solde: 500 EUR" à la console
On aurais pu afficher son solde par compteFB.balance mais ici on a en plus la une mise en forme !

Ajouter deux autre méthodes à votre classe (dépôt et retrait)
deposit(amount) {
        console.log("Dépôt de " + amount + " EUR");
        this.balance += amount;
        this.showBalance();
    }
    
    withdraw(amount) {
        if (amount > this.balance) {
            console.log("Retrait refusé !");
        } else {
            console.log("Retrait de " + amount + " EUR");
            this.balance -= amount;
            this.showBalance();
        }
    }
Code à rajouter dans la class BankAccount à la suite de la première méthode. Un compteFB.deposit(600); vous rendra plus riche :-)

Flux RSS Easy-Micro - Abonnez-vous Easy-Micro [ François Bisch ]