Een Class is een blauwdruk van hoe een Object eruit zou moeten komen te zien.

Met het woord new kan van een Class een nieuw Object worden aangemaakt in het geheugen, als dat is gebeurd, dan spreken we van een Instance. Er is dan een Object aangemaakt in het geheugen volgens de richtlijnen van de Class. Alle variabelen en functies uit de Class zullen gekopieerd worden en beschikbaar zijn voor het nieuw geboren Object Instance. Hieronder zie je een voorbeeld van een Class genaamd Enemy. Onderaan zie je dat het new woord wordt gebruikt om de nieuwe objecten aan te maken op basis van de Class.

class Enemy {
  constructor(x, y, speed, name) {
    console.log(`Enemy ${name} created at (${x}, ${y}) with speed ${speed}`);

    this.x = x;
    this.y = y;
    this.speed = speed;
    this.name = name;
  }

  update(dt) {
    console.log(this.x);
    
    this.isDead  = true;
    let isAngry  = false;
    
    isAngry = true;
    
    for() {
      // blablabla
    }
    
  }

  draw() {
     console.log(isAngry);     // Lokale variabele. Ken ik niet! 
     console.log(this.isDead); // true
  }
}

const enemy1 = new Enemy(100, 150, 2, 'Goblin');
const enemy2 = new Enemy(200, 250, 3, 'Orc');
const enemy3 = new Enemy(300, 350, 1.5, 'Troll');

image.png

De variabelen enemy1, enemy2, enemy3 zijn dan dus de Instances waarin het Object opgeslagen ligt.

https://www.w3schools.com/js/js_classes.asp