Sobes.tech
Middle

JavaScript-də prototip sistemləri necə işləyir?

sobes.tech Süni İntellekt

AI-dan cavab

JavaScript-də prototip sistemi, obyektlərin digər obyektlərdən xüsusiyyətlər və metodlar miras ala bildiyi bir irs mexanizmidir.

Hər obyektin daxili [[Prototype]] xüsusiyyəti (bu __proto__ və ya Object.getPrototypeOf vasitəsilə əldə edilə bilər), başqa bir obyektə — prototipə — işarə edir. Əgər obyektə aid xüsusiyyətə daxil olarkən tapılmazsa, axtarış prototipdə, sonra prototipin prototipində və s. davam edir, null-a çatana qədər.

Bu, prototip zəncirlərinin yaradılmasına və sinflər olmadan irsiyyətin həyata keçirilməsinə imkan verir (həmçinin, müasir JS versiyalarında sinf sintaksisi mövcuddur, hansı ki, daxili olaraq prototiplərdən istifadə edir).

Misal:

const heyvan = {
  speak() {
    console.log('Heyvan danışır');
  }
};

const it = Object.create(heyvan);
it.bark = function() {
  console.log('Hav!');
};

it.bark();    // Hav!
it.speak();   // Heyvan danışır (heyvandan miras alınmış)

Beləliklə, prototiplər obyektlərin davranış və xüsusiyyətləri paylaşmasına imkan verir, bu da JavaScript-də obyekt yönümlü proqramlaşdırmanın əsasını təşkil edir.