Q
What will be the output of the following code?
var a = 1; { var a = 2; } console.log(a);

Answer & Solution

Answer: Option B
Solution:
The variable a inside the block will override the outer variable a due to var's function scope.
Related Questions on Average

Can you reassign a value to a variable declared with let?

A). Yes

B). No

C). Only in strict mode

D). Only inside a block

What will be the output of the following code?

const a = 10; a = 20; console.log(a);

A). 10

B). 20

C). Error

D). undefined

What is the difference between let and var?

A). let is function-scoped, var is block-scoped

B). let is block-scoped, var is function-scoped

C). Both are block-scoped

D). Both are function-scoped

What will be the output of the following code?

let x; console.log(x);

A). null

B). undefined

C). 0

D). NaN

What will be the output of the following code?

var x = 5; var y = 6; var z = x + y;

A). 11

B). 11

C). 5

D). 6

What is hoisting in JavaScript?

A). Function call before declaration

B). Variable declared at the top

C). Variable and function declaration are moved to the top

D). Variable scope

Which keyword should be used to declare a block-scoped variable?

A). var

B). let

C). const

D). Both let and const

Can variables declared with 'var' be redeclared in the same scope?

A). Yes

B). No

C). Only inside a function

D). Only inside a loop

Which keyword is used to declare a variable in JavaScript?

A). var

B). let

C). const

D). All of the above

Which of the following is correct about variable scope in JavaScript?

A). var is block-scoped

B). let is function-scoped

C). const is block-scoped

D). All variables are global