JavaScript Nested functions
In JavaScript, Functions within another function are called “Nested function.” These nested functions have access to the variables and parameters of the outer (enclosing) function, creating a scope hierarchy. A function can have one or more inner functions.
Syntax:
// Outer function
function outerFunction() {
// Nested function
function nestedFunction() {
// Function logic here
}
// Call the nested function
nestedFunction();
// Rest of the outer function logic
}
// Call the outer function
outerFunction();
Approach:
- Write one function inside another function.
- Make a call to the inner function in the return statement of the outer function.
- Call it fun(a)(b) where a is a parameter to the outer and b is to the inner function.
- Finally, return the combined output from the nested function.
Example 1: This example uses the approach discussed above.
Javascript
function fun1(a) { function fun2(b) { return a + b; } return fun2; } function GFG_Fun() { console.log(fun1( "A Online Computer Science Portal" ) ( " w3wiki" )); } GFG_Fun() |
Output
A Online Computer Science Portal w3wiki
Example 2: This example uses the approach discussed above, but here the nested function is created differently than the previous one.
Javascript
function fun1(a) { fun = function fun2(b) { return a + b; } return fun; } function GFG_Fun() { console.log(fun1( "This is " )( "w3wiki" )); } GFG_Fun() |
Output
This is w3wiki
Supported Browser:
- Google Chrome
- Edge
- Firefox
- Opera
- Safari
JavaScript is best known for web page development but it is also used in a variety of non-browser environments. You can learn JavaScript from the ground up by following this JavaScript Tutorial and JavaScript Examples.