Is lexical environment and scope in javascript one and the same thing?
Lexical Environment is the environment of the function where it is written. That is, the static order/place where it is situated, regardless from where it is called from.
Scope of a variable/function is basically the locations from where a variable is visible/accessible.
Execution context is the status of the execution stack at any point during runtime. That is the current execution context.