JS Coding Questions Logo
JS Coding Questions
#16💼 Interview💻 Code

What is a pure function

Advertisement

728x90

A pure function is a function whose output depends only on its input arguments and produces no side effects. This means that given the same inputs, a pure function will always return the same output, and it does not modify any external state or data.

Let's take an example to see the difference between pure and impure functions,

#### Example: Pure vs. Impure Functions

javascript
1// Impure Function
2
3let numberArray = [];
4
5const impureAddNumber = (number) => numberArray.push(number);
6
7// Pure Function
8
9const pureAddNumber = (number) => (inputArray) =>
10
11inputArray.concat([number]);
12
13// Usage
14
15console.log(impureAddNumber(6)); // returns 1
16
17console.log(numberArray);        // returns [6]
18
19console.log(pureAddNumber(7)(numberArray)); // returns [6, 7]
20
21console.log(numberArray);                   // remains [6]

- impureAddNumber changes the external variable numberArray and returns the new length of the array, making it impure.

- pureAddNumber creates a new array with the added number and does not modify the original array, making it pure.

Advertisement

Responsive Ad
🎯 Practice NowRelated Challenge

JavaScript Coding Exercise 17

Test your knowledge with this interactive coding challenge.

Start Coding

Advertisement

728x90
16of476