Rozpoczynamy serię o funkcyjnym paradygmacie programowania. Poznajemy funkcje partial w języku JavaScript. Do dzieła!
Nasza funkcja wraz z zastosowaniem:
function incrementFS(by, selector, unit='px',){
let el = document.getElementById(selector);
let computed = getComputedStyle(el);
let fs = computed.getPropertyValue('font-size');
let fsNumber = parseInt(fs);
let newSize = `${fsNumber+by}${unit}`;
el.style.fontSize = newSize;
}
window.addEventListener("DOMContentLoaded", function(){
incrementFS(10, 'para');
});
Funkcję partial tworzymy za pomocą metody bind:
const fontsizePlusPlus = incrementFS.bind(null, by=1);
const decrementFS = incrementFS.bind(null, by=-1);
Używamy tych funkcji w następujący sposób:
window.addEventListener("DOMContentLoaded", function(){
incrementFS(10, 'para');
fontsizePlusPlus('para');
decrementFS('para');
decrementFS('para');
decrementFS('para');
decrementFS('para');
decrementFS('para');
});
Musimy mieć tylko dobrze przemyślaną strategię kolejności argumentów funkcji, do które bindujemy.