In JavaScript, scope works a tad differently than normal OO languages. One of the scopes in JavaScript is function scope. What this means is that anything we define within a function is only available to that function and anything nested within that function. Here is an example…
function myAnimal(){
let name = ‘Bongo’;
}
myAnimal();
console.log(name);
This console log statement will return an error because the name variable is not available outside of the function. How can we get the value of the name if that is what we want from the function? We can use a nested function.
function myAnimal(){
let name = ‘Bongo’;
let getName = function(){
console.log(name);
}
getName();
}
myAnimal();
console.log(name);
The log line within the getName nested function will output “Bongo”. The external log statement will return an error. Function scope allows for nesting values to have access, but not outside of the function.
Happy Coding!
Clay Hess