Клас като набор от методи в ООП в 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, проверяващ дали низът
съдържа само числа.