How does block scope help prevent variable hoisting issues?
A). By moving variables to the top of the code
B). By restricting variables to their block
C). By making variables accessible globally
D). By assigning default values to variables
Which keyword introduces block-scoped variables in JavaScript?
A). var
B). let
C). const
D). function
Which of the following correctly defines a block scope?
A). A scope that encompasses the entire codebase
B). A scope that encompasses a function
C). A scope that encompasses a block of code delimited by curly braces
D). A scope that encompasses an object
What is the output of console.log(outerVar); outside outerFunction if let outerVar = 'Outer'; is declared inside outerFunction?
A). Outer
B). undefined
C). Error
D). null
How can you ensure variable immutability within a block?
A). Declare the variable with var
B). Declare the variable with let
C). Declare the variable with const
D). Assign a default value
What is the output of console.log(blockVar); outside a block if let blockVar = 'Block'; is declared inside a block?
A). Block
B). undefined
C). Error
D). null
What is hoisting in JavaScript?
A). Moving variables to the top of their function or global scope
B). Making variables undefined
C). Creating new variables
D). None of the above
What does the Temporal Dead Zone (TDZ) refer to?
A). A zone with no variables
B). A zone where variables are in memory but not accessible
C). A zone where variables are accessible globally
D). A zone with limited variable scope
What is the main difference between var and let in terms of scope?
A). var is block-scoped, let is function-scoped
B). var is function-scoped, let is block-scoped
C). Both var and let are block-scoped
D). Both var and let are function-scoped
What is the purpose of block scope in JavaScript?
A). To limit the visibility and accessibility of variables
B). To make variables global
C). To create constants
D). To execute functions