Darasa kama Mkusanyiko wa Mbinu katika OOP katika JavaScript
Wakati mwingine madarasa hutumiwa kwa kikundi mbinu za mada sawa. Katika kesi hii kwa kawaida huundwa moja tu kitu cha darasa hili na mbinu zake hutumiwa mara nyingi katika hali mbalimbali.
Wacha tuangalie kwa mfano. Tufanye darasa ambalo litakuwa kuendesha arrays ya nambari:
class ArrHelper {
}
Kila mbinu ya darasa hii parameta atakubali array na kutekeleza juu yake operesheni maalum. Hebu, kwa mfano, tuwe na yafuatayo mbinu:
class ArrHelper {
getSum(arr) {
// jumla ya vipengele
}
getAvg(arr) {
// wastani wa kihesabu
}
}
Wacha tuandike utekelezaji wa mbinu hizi:
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;
}
}
}
Wacha tuone jinsi tutakavyofanya kutumia mbinu hizi. Tuweke kitu cha darasa letu:
let arrHelper = new ArrHelper;
Pata kwa msaada wa kitu chetu jumla ya nambari za arrays mbalimbali:
let sum1 = arrHelper.getSum([1, 2, 3]);
console.log(sum1);
let sum2 = arrHelper.getSum([3, 4, 5]);
console.log(sum2);
Fanya darasa Validator,
ambalo litafanya ukaguzi
wa strings kuwa sahihi.
Fanya katika darasa lako mbinu
isEmail, inayokagua string ikiwa ni
barua pepe sahihi.
Fanya katika darasa lako mbinu
isDomain, inayokagua string ikiwa ni
jina sahihi la kikoa.
Fanya katika darasa lako mbinu
isNumber, inayokagua string ikiwa
inana nambari pekee.