Класс чун маҷмӯи методҳо дар ООП дар JavaScript
Гоҳо классҳоро барои гурӯҳбандӣ методҳои мавзӯи монанд истифода мебаранд. Дар ин ҳолат одатан танҳо як объект аз ин класс сохта мешавад ва методҳои он боранд бисёр маротиба дар ҳолатҳои гуногун истифода мешаванд.
Биёед ба мисол назар кунем. Классеро созем, ки хоҳад бо массивҳои ададҳо кор кунад:
class ArrHelper {
}
Ҳар як методи ин класс параметр ба ҳамчун массивро қабул хоҳад кард ва амалиётҳои таъйиншударо дар болои он иҷро хоҳад кард. Бигзор, барои мисол, мо методҳои зеринро дошта бошем:
class ArrHelper {
getSum(arr) {
// ҷамъи элементҳо
}
getAvg(arr) {
// миёнаи арифметикӣ
}
}
Амалӣ кардани ин методҳоро нависем:
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;
}
}
}
Биёед бубинем, ки чӣ гуна мо хоҳем аз ин методҳо истифода кунем. Объекте аз классамон созем:
let arrHelper = new ArrHelper;
Бо ёрии объекти мо ҷамъи ададҳои массивҳои гуногунро ёбем:
let sum1 = arrHelper.getSum([1, 2, 3]);
console.log(sum1);
let sum2 = arrHelper.getSum([3, 4, 5]);
console.log(sum2);
Класси Validator созед,
ки санҷиди сатрҳоро барои дурустӣ
анҷом хоҳад дод.
Дар класси худ метод
isEmail созед, ки сатрро барои он,
ки он email дуруст аст, санҷад.
Дар класси худ метод
isDomain созед, ки сатрро барои он,
ки он номи домени дуруст аст, санҷад.
Дар класси худ метод
isNumber созед, ки сатрро барои он,
ки он танҳо ададҳо дорост, санҷад.