In JavaScript to understand a pure function is so important to know when you are very dependable in functional programming. Every pure function is a “Function” but every function is not a “Pure Function”. To be a pure function there should have some characteristics.

  • Always depends on own arguments. Like same input, same output.
  • No Side effects & it will not change the variable value outside of own scope.
let val1 = 1
let val2 = 2
function pureFunction() {
  return val1 * val2
}
pureFunction()

The above example is animpurefunction & cause this function using outside scope variable. if the val1 or val2 will change the function will give different output. so its not the charateristic of pure function.

function pureFuncion() {
  let val1 = 6
  let val2 = 4
  return val1 * val2
}
pureFuncion()

The above example is pure function, cause there is nothing going to change outside of its own scope. It always depends on his own scope.

I just tried to give you the very basic concept what is pure and impure function. To know more, you can search on google for deep-inside.