One should not take the precise definition of
'undefined' that I've ever heard.
"When I declare
'a' is placed into memory during the creation phase. So the execution context saw
'var a' and setup
'undefined', that special keyword, mean I, the programmer, never set the value..."
"... That will really help you when debugging code. If you make a habit of setting values equal to
'undefined', then it's really hard to tell if something is
'undefined' mean I never set this value. That's really useful, and it will help you in your debugging. So
'undefined'. I would have called it something else personally like