Wyobraź sobie, że właśnie zadeklarowałeś zmienną, ale nie zawierałeś w niej wartości. Wynik tej zmiennej będzie niezdefiniowany.

var a;
console.log(a)
Result: undefined

A jeśli spróbujesz wykonać jakąkolwiek operację matematyczną, taką jak dodawanie, dzielenie lub odejmowanie na tej niezdefiniowanej zmiennej, otrzymasz NaN. Oznacza „To nie jest liczba”.

var a;
a = a + 1;
console.log(a)
Result: NaN

A potem, jeśli spróbujesz dodać lub połączyć ciąg z niezdefiniowaną zmienną, otrzymasz ciąg undefined.

var a;
var b = a + "hello";
console.log(b)
Result: undefined hello