What is the result of the following code snippet?
A). A. SyntaxError
B). B. ReferenceError
C). C. TypeError
D). D. No error
What happens if you declare a const variable with the same name as an existing variable in JavaScript?
A). A. SyntaxError is thrown
B). B. The existing variable is reassigned
C). C. ReferenceError is thrown
D). D. TypeError is thrown
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 does hoisting affect arrow functions in JavaScript?
A). A. Arrow functions are hoisted with their function bodies
B). B. Arrow functions are hoisted but cannot be accessed before declaration
C). C. Arrow functions are not hoisted
D). D. Hoisting has no effect on arrow functions
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
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
Which keyword allows hoisting of variables in JavaScript?
A). A. var
B). B. let
C). C. const
D). D. Both A and B
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