How does hoisting affect function declarations in JavaScript?
A). A. Function declarations are hoisted with their function bodies
B). B. Function declarations are hoisted but cannot be accessed before declaration
C). C. Function declarations are not hoisted
D). D. Hoisting has no effect on function declarations
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 hoisting in JavaScript?
A). A. A process of lifting heavy objects
B). B. Moving variable and function declarations to the top of their scope
C). C. Reducing code size
D). D. None of the above
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 is the behavior of accessing a let variable before its declaration in JavaScript?
A). A. SyntaxError
B). B. ReferenceError
C). C. undefined
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
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
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
Which keyword allows hoisting of variables in JavaScript?
A). A. var
B). B. let
C). C. const
D). D. Both A and B
What is the output of the following code snippet?
A). A. TypeError
B). B. 10
C). C. undefined
D). D. SyntaxError