How does 'let' differ from 'var' in terms of scope?
A). No difference
B). Function-scoped
C). Block-scoped
D). Global-scoped
What is the default scope of variables declared with the 'var' keyword in JavaScript?
A). Block scope
B). Function scope
C). Module scope
D). Block and function scope
What will be the output of the following code: var e = 110; if (true) { var e = 120; } console.log(e);
A). 110
B). 120
C). Error
D). undefined
How does 'let' handle variable re-declaration in the same scope?
A). Allows it
B). Silently ignores
C). Throws an error
D). Creates a new variable
What will be the output of the following code: var x = 5; var x = 10; console.log(x);
A). 5
B). 10
C). Error
D). undefined
What will happen if you declare a variable without 'var', 'let', or 'const'?
A). Creates a global variable
B). Creates a block-scoped variable
C). Creates a function-scoped variable
D). Throws an error
What will be the output of the following code: let y = 10; let y = 20; console.log(y);
A). 10
B). 20
C). Error
D). undefined
How do 'var' declarations handle hoisting?
A). They are not hoisted
B). Only the assignment is hoisted
C). Only the declaration is hoisted
D). Both declaration and assignment are hoisted
Can 'const' be used to declare an array or object?
A). No, only primitives
B). Yes, but the reference can't change
C). Yes, and the content can't change
D). No
Which keyword should be used by default to declare variables in modern JavaScript?
A). var
B). let
C). const
D). Either B or C