Объекты 3/30 Вопрос

Добрый день.
в ходе решения возник вот такой вопрос.
Вот код:
var diceNumber = 2;

var firstCatName = ‘Кекс’;
var firstCatPoints = 0;

var secondCatName = ‘Рудольф’;
var secondCatPoints = 0;

var runGame = function (quantity, firstPlayerName, firstPlayerPoints, secondPlayerName, secondPlayerPoints) {

firstPlayerPoints += keks.throwDice(quantity, quantity * 6);
secondPlayerPoints += keks.throwDice(quantity, quantity * 6);

};

runGame(diceNumber, firstCatName, firstCatPoints, secondCatName, secondCatPoints);

console.log(firstPlayerPoints);

Если я вывожу в консоль значение firstPlayerPoints после функции (как в примере выше), то в консоли выводится “Переменная firstPlayerPoints не определена”
Если вывожу внутри функции - выдает цифровое значение как и должна.
Почему внутри функции переменная определена, а снаружи - нет?
Спасибо!

из-за того, что переменные существуют в разных областях видимости.

firstPlayerPoints является параметром функции runGame, а потому является локальной переменной для этой функции и доступна только в блоке кода {…} самой функции.

Спасибо )