Блочная область видимости может быть только у переменных, объявленных через let или const.
У переменных объявленных через var или у функций заданных через function областью видимости глобальная или вся функция, где они объявлены
Вот так
const sayHi = function () {
alert(`${phrase}, ${user}`);
}
Будет только в блоке.