Sobes.tech
Middle

Hogyan működik a prototípus rendszer JavaScriptben?

sobes.tech MI

Válasz az MI-től

A JavaScriptben a prototípus rendszer egy öröklődési mechanizmus, amelyben az objektumok más objektumoktól örökölhetnek tulajdonságokat és metódusokat.

Minden objektumnak van egy belső [[Prototype]] tulajdonsága (amelyhez a __proto__ vagy az Object.getPrototypeOf segítségével lehet hozzáférni), amely egy másik objektumra mutat — a prototípusra. Ha egy tulajdonság elérésénél nem található meg az objektumban, a keresés folytatódik a prototípusban, majd a prototípus prototípusában, és így tovább, amíg el nem éri a null értéket.

Ez lehetővé teszi a prototípus láncok létrehozását és az öröklődés megvalósítását osztályok nélkül (bár a modern JS verziókban van osztályszintaxis, amely a háttérben prototípusokat használ).

Példa:

const állat = {
  speak() {
    console.log('Állat beszél');
  }
};

const kutya = Object.create(állat);
kutya.bark = function() {
  console.log('Vau!');
};

kutya.bark();    // Vau!
kutya.speak();   // Állat beszél (örökölve az állattól)

Így a prototípusok lehetővé teszik, hogy az objektumok viselkedést és tulajdonságokat osszanak meg, ami az objektumorientált programozás alapja JavaScriptben.