Klasa si grup metodash në OOP në JavaScript
Ndonjëherë klasat përdoren për grupimin e metodave me tematikë të ngjashme. Në këtë rast zakonisht krijohet vetëm një objekt i kësaj klase dhe metodat e saj përdoren shumë herë në situata të ndryshme.
Le të shohim një shembull. Le të bëjmë një klasë që do të manipulojë vargje numrash:
class ArrHelper {
}
Çdo metodë e kësaj klase do të marrë si parametër një varg dhe do të kryejë mbi të një operacion të caktuar. Le të themi, për shembull, që kemi metodat në vijim:
class ArrHelper {
getSum(arr) {
// shuma e elementeve
}
getAvg(arr) {
// mesatarja aritmetike
}
}
Le të shkruajmë implementimin e këtyre metodave:
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;
}
}
}
Le të shohim se si do të i përdorim këto metoda. Le të krijojmë një objekt të klasës sonë:
let arrHelper = new ArrHelper;
Le të gjejmë me ndihmën e objektit tonë shumën e numrave të vargjeve të ndryshëm:
let sum1 = arrHelper.getSum([1, 2, 3]);
console.log(sum1);
let sum2 = arrHelper.getSum([3, 4, 5]);
console.log(sum2);
Bëni një klasë Validator,
që do të kryejë kontrollin
e vargjeve për korrektësinë.
Bëni në klasën tuaj metodën
isEmail, që kontrollon nëse vargu është
një email i korrekt.
Bëni në klasën tuaj metodën
isDomain, që kontrollon nëse vargu është
ni emër domain i korrekt.
Bëni në klasën tuaj metodën
isNumber, që kontrollon nëse vargu
përmban vetëm numra.