JavaScriptにおけるOOPにおけるメソッドの集合としてのクラス
時には、類似したテーマのメソッドをグループ化するためにクラスが使用されます。この場合、通常、そのクラスのオブジェクトは1つだけ作成され、そのメソッドはさまざまな状況で何度も使用されます。
例を見てみましょう。 数値の配列を操作するクラスを作成しましょう:
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クラスを作成してください。
このクラスは文字列の正しさをチェックします。
あなたのクラスに、文字列が正しいemailかどうかをチェックするメソッドisEmailを作成してください。
あなたのクラスに、文字列が正しいドメイン名かどうかをチェックするメソッドisDomainを作成してください。
あなたのクラスに、文字列が数値のみを含んでいるかどうかをチェックするメソッドisNumberを作成してください。