Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
Pierwszyrzutoka
ZilustrujmypokrótcepojęcieDLekkofunkcyjnyJavaScript”zapomocąkawałka
koduprzedipo.Rozważmy:
varnumbers=[4,10,0,27,42,17,15,-6,58];
varfaves=[];
varmagicNumber=0;
pickFavoriteNumbers();
calculateMagicNumber();
outputMsg();
//***
***
***
***
***
//Themagicnumberis:42
functioncalculateMagicNumber(){
for(letfaveoffaves){
magicNumber=magicNumber+fave;
}
}
functionpickFavoriteNumbers(){
for(letnumofnumbers){
if(num>=10&&num<=20){
faves.push(num);
}
}
}
functionoutputMsg(){
varmsg=`Themagicnumberis:${magicNumber}`;
console.log(msg);
}
Aterazpopatrzmynainnystylkodu,którydajedokładnietakisamwynik:
varsumOnlyFavorites=FP.compose([
FP.lterReducer(FP.gte(10)),
FP.lterReducer(FP.lte(20))
])(sum);
varprintMagicNumber=FP.pipe([
FP.reduce(sumOnlyFavorites,0),
constructMsg,
2
Rozdział10Dlaczegoprogramowaniefunkcyjne?