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 to a block
B). Variables scoped to a function
C). Variables scoped globally
D). Variables scoped locally
What is the output of console.log(outerVar); outside of outerFunction if var outerVar = 'Outer'; is defined inside outerFunction?
A). Outer
B). undefined
C). Error
D). null
Which of the following demonstrates lexical scoping?
A). Closure
B). Hoisting
C). Global scope
D). Local scope
What happens if you declare a variable with the same name in both function and block scopes?
A). It creates two separate variables
B). It causes an error
C). It combines the scopes
D). It prioritizes the function scope
Can function-scoped variables be accessed from outside their functions?
A). Yes
B). No
C). Only if they are constants
D). Only if they are defined globally
What is the output of console.log(innerVar); outside of exampleFunction if var innerVar = 'Hello'; is defined inside exampleFunction?
A). Hello
B). undefined
C). Error
D). null
What is lexical scoping in JavaScript?
A). Variables scoped to the entire codebase
B). Variables scoped to their functions
C). Variables scoped based on their position in the code
D). Variables scoped based on their names
How do you declare a block-scoped variable in ES6?
A). var
B). let
C). const
D). function
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