Klasė kaip metodų rinkinys OOP JavaScript
Kartais klasės naudojamos susijusios tematikos metodų grupuoti. Tokiu atveju dažniausiai sukuriamas tik vienas šios klasės objektas ir jo metodai naudojami daug kartų įvairiose situacijose.
Pažiūrėkime pavyzdžiu. Sukurkime klasę, kuri manipuliuos skaičių masyvais:
class ArrHelper {
}
Kiekvienas šios klasės metodas parametru gaus masyvą ir atliks su juo nurodytą operaciją. Tarkime, pavyzdžiui, kad mes turėsime šiuos metodus:
class ArrHelper {
getSum(arr) {
// elementų suma
}
getAvg(arr) {
// aritmetinis vidurkis
}
}
Parašykime šių metodų implementaciją:
class ArrHelper {
getSum(arr) {
let res = 0;
for (let num of arr) {
res += num;
}
return res;
}
getAvg(arr) {
if (arr.length > 0) {
let sum = this.getSum(arr);
return sum / arr.length;
} else {
return 0;
}
}
}
Pažiūrėkime, kaip mes naudosimės šiais metodais. Sukurkime mūsų klasės objektą:
let arrHelper = new ArrHelper;
Raskime su mūsų objekto pagalba skaičių sumą įvairių masyvų:
let sum1 = arrHelper.getSum([1, 2, 3]);
console.log(sum1);
let sum2 = arrHelper.getSum([3, 4, 5]);
console.log(sum2);
Sukurkite klasę Validator,
kuri atliks eilučių
teisingumo patikrinimą.
Padarykite savo klasėje metodą
isEmail, tikrinantį eilutę ar
ji yra teisingas email.
Padarykite savo klasėje metodą
isDomain, tikrinantį eilutę ar
ji yra teisingas domeno vardas.
Padarykite savo klasėje metodą
isNumber, tikrinantį eilutę ar
joje yra tik skaičiai.