⊗jsOpAdMCL 43 of 60 menu

OOP-də metod kodunda kontekstin itirilməsi JavaScript-də

Sinif metodunun orijinal kodundan istifadə edərkən kontekst itirilə bilər. Nümunəyə baxaq. Tutaq ki, aşağıdakı sinifimiz var:

class User { #name; constructor(name) { this.#name = name; } getName() { return this.#name; } }

Bu sinifin obyektini yaradaq:

let user = new User('john');

Metodun kodunu dəyişənə yazaq:

let func = user.getName;

Metodu dəyişənə yazdığımız an kontekst itdi. İndi this metodun kodu daxilində sinif obyektini göstərməyəcək. yoxlayaq, funksiyamızı çağıraq:

console.log(func()); // xəta

Problemi həll etmək üçün funksiyaya konteksti bağlaya bilərsiniz, məsələn, bind vasitəsilə:

func = func.bind(user); console.log(func()); // işləyir
Azərbaycan
AfrikaansБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Biz saytin işi, analitika və fərdiləşdirmə üçün cookie istifadə edirik. Məlumatların emalı Məxfilik Siyasəti əsasında həyata keçirilir.
hamısını qəbul et konfiqurasiya et rədd et