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 does 'TDZ' stand for in the context of JavaScript?
A). Temporary Declaration Zone
B). Temporal Dead Zone
C). Temporary Dead Zone
D). Temporal Declaration Zone
What error is thrown when attempting to redeclare a 'const' variable?
A). TypeError
B). ReferenceError
C). SyntaxError
D). RangeError
How does 'let' differ from 'var' in terms of scope?
A). 'let' is function-scoped, 'var' is block-scoped
B). Both 'let' and 'var' are block-scoped
C). 'let' is block-scoped, 'var' is function-scoped
D). Both 'let' and 'var' are function-scoped
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 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 correctly describes variable hoisting with 'var'?
A). 'var' declarations are not hoisted
B). Only the variable declaration is hoisted, not the initialization
C). Both declaration and initialization are hoisted
D). Only in strict mode 'var' declarations are hoisted
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
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
Why is it recommended to use 'let' and 'const' over 'var' in modern JavaScript?
A). 'let' and 'const' are function-scoped
B). 'let' and 'const' prevent variable hoisting
C). 'let' and 'const' are block-scoped, reducing potential errors
D). 'let' and 'const' are faster