Pour attribuer le titre, l'auteur et le nombre de pages reçus à cette instance, on utilise le mot clé this et la notation dot.
class Book {
constructor(title, author, pages) {
this.title = title;
this.author = author;
this.pages = pages;
}
}
Ici, le mot clé this fait référence à la nouvelle instance. Donc, il utilise la notation dot pour attribuer les valeurs reçues aux clés correspondantes.
Maintenant que la classe est terminée, vous pouvez créer des instances par le mot clé new :
let myBook = new Book("L'Histoire de Tao", "Will Alexander", 250);
//Cette ligne crée l'objet suivant :
{
title: "L'Histoire de Tao",
author: "Will Alexander",
pages: 250
}
Avec une classe Book , vous pouvez créer facilement et rapidement de nouveaux objets Book.
Exemple de manipulation de class
Création d'une class, ajout d'une méthode dans la class (qui transforme certaines valeurs des propriétés de la class), ajout de 3 instances de class qui sont ajouter (push) dans un tableau.
export class Book {
constructor(title,author,description,pages,currentPage,read){
this.title = title;
this.author = author;
this.description = description;
this.pages = pages;
this.currentPage = currentPage;
this.read = read;
}
readBook(page){
// cette méthode vérifie où en est le lecteur dans la lecture de son livre
if (page < 1 || page > this.pages){
return 0;
}
if (page >= 1 || page < this.pages){
this.currentPage = page;
alert("ça progresse : " + this.currentPage);
//return 1;
}
if (page === this.pages){
this.currentPage = page;
this.read = true;
return 1;
}
}
}
// un tableau vide, qui va lister les instances de la class
export const books = [];
// 3 instances de la class
let firstBook = new Book("Titre1","Auteur 1","Description du livre 1", 248, 17, false);
let secondBook = new Book("Titre2","Auteur 2","Description du livre 2", 122, 1, false);
let thirdBook = new Book("Titre3","Auteur 3","Description du livre 3", 317, 54, false);
// on envoie les 3 instances de la class dans le tableau "books"
books.push(firstBook,secondBook,thirdBook);