Sobes.tech
Junior

Wat doet de functie call in JavaScript?

sobes.tech AI

Antwoord van AI

De functie call in JavaScript roept de functie aan waarop het wordt toegepast, stelt een specifieke waarde voor this in en geeft argumenten afzonderlijk door.

Algemene syntaxis:

func.call(thisArg, arg1, arg2, ...);
  • thisArg: De waarde die wordt gebruikt als this tijdens het aanroepen van func. Als thisArg null of undefined is, wordt this vervangen door het globale object in niet-strikte modus (of blijft undefined in strikte modus).
  • arg1, arg2, ... : Argumenten die aan de functie func worden doorgegeven.

Belangrijkste toepassingen:

  • Verandering van context: Maakt het mogelijk expliciet te bepalen welk object toegankelijk is via this binnen de functie.
  • Methoden lenen: Maakt het mogelijk om methoden van het ene object voor een ander te gebruiken.
  • Erasering van overerving (voor klassen): In oudere versies van JavaScript kon call worden gebruikt om de constructor van de ouder met de context van het kind-object aan te roepen.

Voorbeeld van contextwijziging:

function greet() {
  console.log(`Hallo, ${this.name}!`);
}

const person = { name: 'Piet' };

greet.call(person); // Toont: Hallo, Piet!

Voorbeeld van methoden lenen:

const numbers = [1, 2, 3];

// Gebruik van de splice-methode van een array op een array-achtig object
const arrayLike = { 0: 'a', 1: 'b', length: 2 };

Array.prototype.splice.call(arrayLike, 0, 1);

console.log(arrayLike); // Toont: { 0: 'b', length: 1 }