Клас као скуп метода у ООП у JavaScript-у

Понекад се класе користе за груписање метода сличне тематике. У том случају се углавном креира само један објекат те класе и његови методи се користе много пута у разним ситуацијама.

Хајде да погледамо на примеру. Направимо класу која ће манипулисати низовима бројева:

javascriptclass ArrHelper {
  
}

Сваки метод ове класе параметром ће примати низ и извршаваће над њим задату операцију. Нека, на пример, имамо следеће методе:

javascriptclass ArrHelper {
  getSum(arr) {
    // сума елемената
  }
  
  getAvg(arr) {
    // аритметичка средина
  }
}

Напишимо имплементацију ових метода:

javascriptclass 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;
    }
  }
}

Хајде да видимо како ћемо користити ове методе. Креирајмо објекат наше класе:

javascriptlet arrHelper = new ArrHelper;

Пронађимо помоћу нашег објекта суму бројева различитих низова:

javascriptlet sum1 = arrHelper.getSum([1, 2, 3]);
console.log(sum1);

let sum2 = arrHelper.getSum([3, 4, 5]);
console.log(sum2);
Задание 1

Направите класу Validator, која ће извршавати проверу стрингова на исправност.

Задание 2

Направите у вашој класи метод isEmail, који проверава да ли је стринг исправан email.

Задание 3

Направите у вашој класи метод isDomain, који проверава да ли је стринг исправан назив домена.

Задание 4

Направите у вашој класи метод isNumber, који проверава да ли стринг садржи само бројеве.