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.