Classes JavaScript
On a des classes en js depuis 2015, MAIS CE N'EST PAS UNE CLASSE AU SENS DU PHP OU D'AUTRES LANGAGES !
C'est juste une syntaxe plus propre pour faire du prototypage et des héritages
Créer une classe
// on peut créer une classe avec la syntaxe class
class Person {
constructor(name, age) {
this.name = name;
this.age = age;
}
}
let person1 = new Person('John', 20);
console.log(person1.name);
console.log(person1.age);
Héritage
// on peut également hériter d'une classe
class Employee extends Person {
constructor(name, age, job) {
super(name, age);
this.job = job;
}
}
Méthodes statiques
// on peut également créer une methode statique
class Animal {
crie() {
return this;
}
static mange() {
return this;
}
}
let obj = new Animal();
obj.crie(); // Animal {}
let crie = obj.crie;
crie(); // undefined
Animal.mange(); // class Animal
let mange = Animal.mange;
mange(); // undefined