What is the output of the following code snippet?
A). A. TypeError
B). B. 10
C). C. undefined
D). D. SyntaxError
How does hoisting affect const declarations in JavaScript?
A). A. const variables are hoisted with their initial values
B). B. const variables are hoisted but cannot be accessed before declaration
C). C. const variables are hoisted and can be accessed before declaration
D). D. Hoisting does not affect const declarations
What is the purpose of the Temporal Dead Zone (TDZ) in JavaScript?
A). A. To prevent variable reassignment
B). B. To catch errors at compile time
C). C. To ensure variables are initialized before use
D). D. To reduce memory usage
What is the behavior of accessing a const variable before its declaration in a nested block in JavaScript?
A). A. ReferenceError is thrown
B). B. SyntaxError is thrown
C). C. undefined is printed
D). D. No error
What is the result of the following code snippet?
A). A. SyntaxError
B). B. ReferenceError
C). C. TypeError
D). D. No error
How does hoisting differ between let and var declarations in JavaScript?
A). A. Both let and var variables are hoisted with their initial values
B). B. let variables are hoisted with their initial values, var variables are hoisted with undefined
C). C. let variables are not hoisted, var variables are hoisted with their initial values
D). D. Hoisting behavior is the same for let and var declarations
What is the behavior of accessing a var variable within a block before its declaration in JavaScript?
A). A. ReferenceError is thrown
B). B. SyntaxError is thrown
C). C. undefined is printed
D). D. No error
How can you ensure that a const variable is initialized before use in JavaScript?
A). A. Use let instead of const for all variables
B). B. Declare const variables at the top of their scope
C). C. Assign a default value to const variables
D). D. None of the above
What happens if you try to reassign a const variable in JavaScript?
A). A. No effect on the variable
B). B. SyntaxError is thrown
C). C. ReferenceError is thrown
D). D. TypeError is thrown
How does hoisting affect variable shadowing in JavaScript?
A). A. It allows variables with the same name in different scopes to coexist
B). B. It prevents variables with the same name in different scopes from coexisting
C). C. It has no effect on variable shadowing
D). D. It automatically renames variables with the same name