Which keyword allows block-scoped variable declaration?
A). var
B). let
C). const
D). Both B and C
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
What will be the output of the following code: console.log(a); var a = 50;
A). 50
B). undefined
C). Error
D). null
Can you re-declare a variable using 'const' in the same scope?
A). Yes
B). No
C). Only in functions
D). Only in loops
What is the scope of a variable declared with 'let' inside a loop?
A). Global
B). Function
C). Loop block
D). Entire script
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
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
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 e = 110; if (true) { var e = 120; } console.log(e);
A). 110
B). 120
C). Error
D). undefined
Which of the following statements is true about 'const'?
A). It allows re-declaration
B). It allows reassignment
C). It is block-scoped
D). It is function-scoped