What is the result of the following code snippet?
A). A. SyntaxError
B). B. ReferenceError
C). C. TypeError
D). D. No error
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 can you avoid issues related to hoisting and TDZ in JavaScript?
A). A. Always declare variables at the bottom of the code
B). B. Use var for all variable declarations
C). C. Declare variables with let or const and avoid accessing them early
D). D. None of the above
What is the behavior of accessing a const variable within a function 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 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
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
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 output of the following code snippet?
A). A. TypeError
B). B. 10
C). C. undefined
D). D. SyntaxError
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