What happens if you try to access a block-scoped variable outside its block?
A). The variable is accessible globally
B). The variable is accessible within its block
C). An error occurs
D). The variable is accessible within a function
What is the main difference between var and let in terms of scope?
A). var is block-scoped, let is function-scoped
B). var is function-scoped, let is block-scoped
C). Both var and let are block-scoped
D). Both var and let are function-scoped
What happens when you declare a constant with const inside a block and try to reassign it?
A). It throws an error
B). It allows reassignment
C). It assigns the value globally
D). It assigns a default value
How can you ensure variable immutability within a block?
A). Declare the variable with var
B). Declare the variable with let
C). Declare the variable with const
D). Assign a default value
How can you access a variable declared in an inner block from an outer block?
A). Using the var keyword
B). Using the let keyword
C). Using the const keyword
D). Using the this keyword
What is the output of console.log(innerVar); outside exampleFunction if let innerVar = 'Hello'; is declared inside exampleFunction?
A). Hello
B). undefined
C). Error
D). null
How does block scope help prevent variable hoisting issues?
A). By moving variables to the top of the code
B). By restricting variables to their block
C). By making variables accessible globally
D). By assigning default values to variables
What is the output of console.log(i); outside the loop if let i = 10; is declared inside a loop?
A). 10
B). undefined
C). Error
D). 0
What is hoisting in JavaScript?
A). Moving variables to the top of their function or global scope
B). Making variables undefined
C). Creating new variables
D). None of the above
What is block scope in JavaScript?
A). Variables scoped globally
B). Variables scoped within a function
C). Variables scoped to a block
D). Variables scoped to an object