The area of the code where color has the value rebeccapurple is the block inside the process function. It doesn't exists anywhere else. In fact, that piece of code will throw a ReferenceError telling you color is not defined.
There are different types of scope that people mention a lot:
Global scope: Means the whole program. A variable in the global scope is one that you can access in the whole codebase.
Function scope: Means the body of a function. When someone says "this variable doesn't leave the function scope", they try to tell you the variable doesn't exists outside the function.
Block scope: This I need to show you.
{letcolor='hotpink'}console.log(color)
Those curly braces form a block, and it has it's own scope. What's interesting is that even thought is not a function, the variable color only exists with the value hotpink inside those curly braces.
When you think about the scope of a variable, just try to ask yourself "where does this variable exists?"
For further actions, you may consider blocking this person and/or reporting abuse
I like to think the scope as an "area". An area where a variable exists with a given value.
If someone asks me "what is the scope of a variable?", I imagine they try to ask me "where does this variable exists?"
Take this example.
The area of the code where
color
has the valuerebeccapurple
is the block inside theprocess
function. It doesn't exists anywhere else. In fact, that piece of code will throw aReferenceError
telling youcolor
is not defined.There are different types of scope that people mention a lot:
Global scope: Means the whole program. A variable in the global scope is one that you can access in the whole codebase.
Function scope: Means the body of a function. When someone says "this variable doesn't leave the function scope", they try to tell you the variable doesn't exists outside the function.
Block scope: This I need to show you.
Those curly braces form a
block
, and it has it's own scope. What's interesting is that even thought is not a function, the variablecolor
only exists with the valuehotpink
inside those curly braces.When you think about the scope of a variable, just try to ask yourself "where does this variable exists?"