Занимает ли эта переменная какое-то место в памяти
Да. undefined это всего-лишь значение специального типа. Переменная же будет выступать в роли контейнера для этого значения (и любого другого). И контейнер сам по себе занимает какую-то память. Как много - зависит от конкретной реализации и ситуации.
Другое дело что оптимизирующий компилятор может тупо вырезать код с переменной, которая не используется.