Functions in JavaScript

Photo by Growtika on Unsplash

Functions in JavaScript


Functions are the bread and butter of JavaScript programming.

- ELOQUENT JAVASCRIPT

  • The " Functions " is a concept of wrapping a piece of program in a value which has many uses.

  • It helps us to structure the large chunk of a program in order to overcome repetition.

  • It helps to associate names with subprograms and to isolate these subprograms from each other.

DEFINING A FUNCTION

A Function definition is a regular binding where the value of the binding is a Function.

Example:-

const square = function(x)
{
  return x * x;
};
console.log(square(12));
//144

The above code defines square which is the " function " that squares the given number. A function is created with an expression that starts with the keyword function.

  1. Functions have a set of parameters and a body, which contains the statements that are to be executed when the function is called.

  2. The function body of a function which is created this way must always be wrapped in braces, even when it consists of only a single statement.

  3. A function can have multiple parameters or no parameters at all.

    Example:-

     -------------------------------------------------(no parameters)
     const makeNoise = function()
     {
     console.log("TingTing!");
     };
     makeNoise();
     // TingTing!
    
     --------------------------------------------------(multipe parameters)
     const power = function(base, exponent)
     {
     let result = 1;
     for (let count = 0; count < exponent; count++)
        {
           result *=base;
        }
     return result;
     };
     console.log(power(2, 10));
     // 1024
    

    In above example " makeNoise " does not list any parameter names.

  4. Some functions produce a value such as power and square and some does not produce any value such as makeNoise.

  5. A return statement determines the value the function which returns. when control comes across such a statement, it immediately jumps out of the current function and gives the returned value to the code which called the function.

  6. A " return " keyword without an expression causes the function to return " undefined " .

  7. Functions that don't have a " return " statement at all, such as " makeNoise ", returns undefined.

Parameters to a function behave like regular bindings, but their initial values are given by the " caller " of the function, not the code in the function itself.