⊗jsOpBsGSA 18 of 60 menu

JavaScript-də OOP-də setter və getter-lərin üstünlükləri

Əvvəlki dərsdə biz hər bir xassə üçün getter və setter etdik. Sual yarana bilər ki, nə üçün belə mürəkkəbliklər lazımdır, həqiqətən də eyni effekti əldə etmək olar, əgər xassələri gizli deyil, ictimai etsək.

Məsələ ondadır ki, getter və setter-lərin üstünlüyü var: xassəyə müraciətdən əvvəl bəzi yoxlamalar yerinə yetirmək olar. Məsələn, bizim vəziyyətimizdə ad və soyadı yazarkən yeni dəyərin boş sətir olmadığını yoxlaya bilərik:

class User { #name; #surn; setName(name) { if (name.length > 0) { this.#name = name; } else { throw new Error('name is incorrect'); } } setSurn(surn) { if (surn.length > 0) { this.#surn = surn; } else { throw new Error('surn is incorrect'); } } getName() { return this.#name; } getSurn() { return this.#surn; } }

Gəlin bunun necə işlədiyini yoxlayaq. Əvvəlcə sinif obyekti yaradaq:

let user = new User;

İndi düzgün dəyəri yazmağa çalışaq:

user.setName('john');

İndi isə səhv dəyəri yazmağa çalışaq:

user.setName(''); // səhv

Employee sinfində yaş setterində yaşın 0 ilə 120 arasında olması yoxlamasını edin.

Employee sinfində maaş getterində elə edin ki, maaş oxunduqda onun dəyərinin sonuna dollar işarəsi əlavə olunsun.

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