Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Gebruik van statische methoden in JavaScript | Beheersing van JavaScript-Klassen en Overerving
Geavanceerde JavaScript-Beheersing

bookGebruik van statische methoden in JavaScript

Statische methoden bieden gedeelde functionaliteit op het niveau van de klasse, toegankelijk zonder een instantie te maken.

Wat zijn statische methoden?

Denk aan een nutsbedrijf dat elektriciteit levert. Het bedrijf zelf (klasse) levert de stroom, maar jij (een instantie) hoeft geen energiecentrale thuis te bouwen. In plaats daarvan maak je direct gebruik van de dienst van het bedrijf (statische methode).

Hoe statische methoden te definiëren en te gebruiken

Statische methoden worden gedeclareerd met het sleutelwoord static. Ze kunnen direct vanaf de klasse worden aangeroepen, maar hebben geen toegang tot instantie-eigenschappen of -methoden omdat ze op het klasseniveau opereren.

123456789101112131415
class MathUtils { // Static method to calculate the square of a number static square(number) { return number * number; } // Static method to calculate the cube of a number static cube(number) { return number * number * number; } } // Calling static methods directly from the class console.log(MathUtils.square(4)); // Output: 16 console.log(MathUtils.cube(3)); // Output: 27
copy

In dit voorbeeld zijn de methoden square en cube statisch, wat betekent dat ze tot de klasse MathUtils behoren en direct op de klasse zelf kunnen worden aangeroepen. Deze methoden voeren wiskundige bewerkingen uit en worden gedeeld door de gehele klasse zonder dat ze aan een specifieke instantie gekoppeld hoeven te zijn.

Waarom statische methoden gebruiken?

Statische methoden zijn nuttig wanneer functionaliteit aan een klasse moet worden gekoppeld zonder dat deze aan individuele instanties verbonden hoeft te zijn. Ze worden vaak gebruikt voor hulpfuncties, utility-methoden of logica die breed van toepassing is op de gehele klasse.

  • Statische methoden worden vaak gebruikt voor bewerkingen die universeel gelden, zoals wiskundige berekeningen, datumbewerking of stringopmaak;
  • Statische methoden kunnen ook worden ingezet voor bewerkingen die de klasse zelf betreffen, zoals het op specifieke manieren aanmaken van instanties, het beheren van klasseconfiguraties of het bieden van klassebrede data-toegang.

Voorbeeld: statische utility-methode

Een praktijkvoorbeeld: een User-klasse met een statische methode om de ID's van twee gebruikers te vergelijken. Deze methode hoeft niet met de gegevens van een individuele gebruiker te werken en kan daarom als statische methode op de klasse worden geplaatst.

12345678910111213141516171819
class User { constructor(id, name) { this.id = id; this.name = name; } // Static method to compare user IDs static compareIds(user1, user2) { return user1.id === user2.id; } } const user1 = new User(101, 'Alice'); const user2 = new User(102, 'Bob'); const user3 = new User(101, 'Charlie'); // Using the static method to compare user IDs console.log(User.compareIds(user1, user2)); // Output: false console.log(User.compareIds(user1, user3)); // Output: true
copy

In dit voorbeeld behoort de statische methode compareIds tot de klasse User en maakt het mogelijk om de ID's van twee User-instanties te vergelijken zonder toegang te hebben tot hun individuele eigenschappen of methoden.

Belangrijkste Verschillen Tussen Statische en Instantie Methoden

Praktijkvoorbeeld: Applicatie Utility Klasse

Stel een scenario voor waarin een applicatie gegevens moet loggen. Een Logger-klasse kan statische methoden bevatten om berichten met verschillende niveaus te loggen (info, waarschuwing, fout). Deze methoden zijn globaal toegankelijk zonder een instantie van de logger te maken.

123456789101112131415161718
class Logger { static info(message) { console.log(`INFO: ${message}`); } static warning(message) { console.warn(`WARNING: ${message}`); } static error(message) { console.error(`ERROR: ${message}`); } } // Calling static methods directly from the Logger class Logger.info('Application started'); Logger.warning('Low disk space'); Logger.error('Uncaught exception occurred');
copy

In dit voorbeeld zijn de statische methoden info, warning en error hulpfuncties die globaal kunnen worden aangeroepen om berichten op verschillende niveaus te loggen. Er is geen instantie van Logger nodig om deze methoden te gebruiken.

1. Wat is een statische methode?

2. Hoe definieer je een statische methode in een klasse?

question mark

Wat is een statische methode?

Select the correct answer

question mark

Hoe definieer je een statische methode in een klasse?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 1. Hoofdstuk 12

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Awesome!

Completion rate improved to 2.22

bookGebruik van statische methoden in JavaScript

Veeg om het menu te tonen

Statische methoden bieden gedeelde functionaliteit op het niveau van de klasse, toegankelijk zonder een instantie te maken.

Wat zijn statische methoden?

Denk aan een nutsbedrijf dat elektriciteit levert. Het bedrijf zelf (klasse) levert de stroom, maar jij (een instantie) hoeft geen energiecentrale thuis te bouwen. In plaats daarvan maak je direct gebruik van de dienst van het bedrijf (statische methode).

Hoe statische methoden te definiëren en te gebruiken

Statische methoden worden gedeclareerd met het sleutelwoord static. Ze kunnen direct vanaf de klasse worden aangeroepen, maar hebben geen toegang tot instantie-eigenschappen of -methoden omdat ze op het klasseniveau opereren.

123456789101112131415
class MathUtils { // Static method to calculate the square of a number static square(number) { return number * number; } // Static method to calculate the cube of a number static cube(number) { return number * number * number; } } // Calling static methods directly from the class console.log(MathUtils.square(4)); // Output: 16 console.log(MathUtils.cube(3)); // Output: 27
copy

In dit voorbeeld zijn de methoden square en cube statisch, wat betekent dat ze tot de klasse MathUtils behoren en direct op de klasse zelf kunnen worden aangeroepen. Deze methoden voeren wiskundige bewerkingen uit en worden gedeeld door de gehele klasse zonder dat ze aan een specifieke instantie gekoppeld hoeven te zijn.

Waarom statische methoden gebruiken?

Statische methoden zijn nuttig wanneer functionaliteit aan een klasse moet worden gekoppeld zonder dat deze aan individuele instanties verbonden hoeft te zijn. Ze worden vaak gebruikt voor hulpfuncties, utility-methoden of logica die breed van toepassing is op de gehele klasse.

  • Statische methoden worden vaak gebruikt voor bewerkingen die universeel gelden, zoals wiskundige berekeningen, datumbewerking of stringopmaak;
  • Statische methoden kunnen ook worden ingezet voor bewerkingen die de klasse zelf betreffen, zoals het op specifieke manieren aanmaken van instanties, het beheren van klasseconfiguraties of het bieden van klassebrede data-toegang.

Voorbeeld: statische utility-methode

Een praktijkvoorbeeld: een User-klasse met een statische methode om de ID's van twee gebruikers te vergelijken. Deze methode hoeft niet met de gegevens van een individuele gebruiker te werken en kan daarom als statische methode op de klasse worden geplaatst.

12345678910111213141516171819
class User { constructor(id, name) { this.id = id; this.name = name; } // Static method to compare user IDs static compareIds(user1, user2) { return user1.id === user2.id; } } const user1 = new User(101, 'Alice'); const user2 = new User(102, 'Bob'); const user3 = new User(101, 'Charlie'); // Using the static method to compare user IDs console.log(User.compareIds(user1, user2)); // Output: false console.log(User.compareIds(user1, user3)); // Output: true
copy

In dit voorbeeld behoort de statische methode compareIds tot de klasse User en maakt het mogelijk om de ID's van twee User-instanties te vergelijken zonder toegang te hebben tot hun individuele eigenschappen of methoden.

Belangrijkste Verschillen Tussen Statische en Instantie Methoden

Praktijkvoorbeeld: Applicatie Utility Klasse

Stel een scenario voor waarin een applicatie gegevens moet loggen. Een Logger-klasse kan statische methoden bevatten om berichten met verschillende niveaus te loggen (info, waarschuwing, fout). Deze methoden zijn globaal toegankelijk zonder een instantie van de logger te maken.

123456789101112131415161718
class Logger { static info(message) { console.log(`INFO: ${message}`); } static warning(message) { console.warn(`WARNING: ${message}`); } static error(message) { console.error(`ERROR: ${message}`); } } // Calling static methods directly from the Logger class Logger.info('Application started'); Logger.warning('Low disk space'); Logger.error('Uncaught exception occurred');
copy

In dit voorbeeld zijn de statische methoden info, warning en error hulpfuncties die globaal kunnen worden aangeroepen om berichten op verschillende niveaus te loggen. Er is geen instantie van Logger nodig om deze methoden te gebruiken.

1. Wat is een statische methode?

2. Hoe definieer je een statische methode in een klasse?

question mark

Wat is een statische methode?

Select the correct answer

question mark

Hoe definieer je een statische methode in een klasse?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 1. Hoofdstuk 12
some-alt