В примере сначала идет присвоение переменной функции makeCounter (об этом даже название функции говорит), которая в свою очередь возвращает другую функцию, в результате переменная counter = function() {
currentCount++;
return currentCount;
}; Которую мы потом вызываем