Клас як набор метадаў у ААП у 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, які правярае радок на тое,
што яна змяшчае толькі лікі.