Sobes.tech
Junior — Middle

Kādi pieejas pastāv JavaScript, lai atkārtoti izmantotu kodu bez prototipiskās mantošanas?

sobes.tech AI

Atbilde no AI

JavaScript bieži izmanto šādus pieejas koda atkārtotai lietošanai bez prototipiskās mantošanas:

  1. Augstākā līmeņa funkcijas un funkciju kompozīcija — mazāku funkciju izveide, kuras var kombinēt, lai sasniegtu vēlamo uzvedību.

  2. Mixins — objekti vai funkcijas, kas pievieno funkcionalitāti citiem objektiem, kopējot īpašības.

  3. Dekoratori — funkcijas, kas ietver citas funkcijas un paplašina to uzvedību.

  4. Moduļi — atkārtoti lietojama koda atdalīšana atsevišķos failos vai nosaukumu telpās.

  5. Klases ar kompozīciju vietā, nevis mantošanu — iekļaut objektus kā īpašības, nevis mantošanu.

Mixina piemērs:

const canEat = {
  eat() {
    console.log('Ēd');
  }
};

const canWalk = {
  walk() {
    console.log('Ej');
  }
};

function createPerson(name) {
  let person = { name };
  return Object.assign(person, canEat, canWalk);
}

const person = createPerson('Jānis');
person.eat(); // Ēd
person.walk(); // Ej

Šādā veidā atkārtota lietošana tiek panākta ar kompozīciju un funkcionalitāšu apvienošanu, nevis ar prototipisko mantošanu.