Q
Which of the following correctly describes variable hoisting with 'let' and 'const'?

Answer & Solution

Answer: Option D
Solution:
Both 'let' and 'const' declarations are hoisted to the top of their block but are not initialized, leading to a Temporal Dead Zone until the actual declaration is encountered.
Related Questions on Average

Which of the following statements about 'let' and 'const' is false?

A). Both 'let' and 'const' are block-scoped

B). Both 'let' and 'const' cannot be redeclared in the same scope

C). 'let' can be reassigned, 'const' cannot

D). Both 'let' and 'const' can be redeclared in different scopes

What happens when you redeclare a variable with 'var' inside a function?

A). The variable is overwritten

B). The variable declaration is ignored

C). It throws an error

D). The function's scope is reset

What error is thrown when attempting to redeclare a 'const' variable?

A). TypeError

B). ReferenceError

C). SyntaxError

D). RangeError

What is the result of redeclaring a variable with 'var' in the same scope in JavaScript?

A). Syntax Error

B). The variable is overwritten

C). The variable remains unchanged

D). The program crashes

Which of the following is a characteristic of 'const' variables?

A). They can be redeclared

B). They can be reassigned

C). They cannot be redeclared but can be reassigned

D). They cannot be redeclared or reassigned

What will be the result of executing 'let x = 1; let x = 2;' in the same scope?

A). x will be 1

B). x will be 2

C). Syntax Error

D). Runtime Error

What will happen if you declare a 'let' variable inside a block and try to access it outside the block?

A). It will return undefined

B). It will throw a ReferenceError

C). It will return null

D). It will be accessible outside the block

Which of the following statements is true regarding redeclaring variables in JavaScript?

A). You can redeclare 'var' variables within the same scope without errors

B). You can redeclare 'let' variables within the same scope without errors

C). You can redeclare 'const' variables within the same scope without errors

D). None of the above

How does the scope of 'var' differ from 'let' and 'const' inside a function?

A). 'var' is block-scoped, 'let' and 'const' are function-scoped

B). 'var', 'let', and 'const' are all block-scoped

C). 'var' is function-scoped, 'let' and 'const' are block-scoped

D). 'var' and 'let' are block-scoped, 'const' is function-scoped

Can you redeclare a 'var' variable in a different scope without error?

A). Yes

B). No

C). Only in strict mode

D). Only if the variable is not initialized