Pure Functions in JavaScript Last Updated : 17 Dec, 2024 Comments Improve Suggest changes Like Article Like Report A Pure Function is a function (a block of code) that always returns the same result if the same arguments are passed. Pure functions return consistent results for identical inputs.They do not modify external states or depend on mutable data.Often used with immutable data structures to ensure reliability.Their independence from external states makes them highly reusable. JavaScript function add(a, b) { return a + b; } console.log(add(2, 3)); console.log(add(2, 3)); Output5 5 It always returns the same result for the same input.It does not modify any external variables or state.Note: Generally, we use the Pure function in JavaScript for any purpose. Characteristics of Pure FunctionsDeterministic Output: For a given set of inputs, the output is always the same.No Side Effects: The function does not:Modify variables outside its scope.Interact with external systems like APIs, databases, or DOM manipulation.Change mutable data.Immutability: Pure functions do not change the input values; instead, they return a new value or object.Example of a Function with Side EffectsHere, increment is not a pure function because it modifies the external variable count. JavaScript let c = 0; function inc() { c++; return c; } console.log(inc()); console.log(inc()); Output1 2 Impure Functions: What to AvoidImpure functions produce unpredictable results or affect external states, which can lead to bugs and make your code harder to test. JavaScript let user = { name: "Meeta", age: 25 }; function updated(newAge) { user.age = newAge; return user; } console.log(updated(26)); // Alters the global `user` object console.log(user.age); Output{ name: 'Meeta', age: 26 } 26 Real-World Applications of Pure FunctionsData Transformation: Use pure functions in map, filter, and reduce operations for processing data.State Management: Libraries like Redux emphasize pure functions for state updates.Unit Testing: Pure functions are ideal for unit tests because they have predictable outputs.Performance Optimization: Pure functions are easily memoized, as their outputs depend solely on inputs. Pure Functions Visit Course Comment More infoAdvertise with us G geek5177 Follow Improve Article Tags : JavaScript Web Technologies javascript-functions Explore JavaScript Tutorial 8 min read JavaScript BasicsIntroduction to JavaScript 4 min read JavaScript Versions 2 min read How to Add JavaScript in HTML Document? 3 min read JavaScript Syntax 6 min read JavaScript Output 4 min read JavaScript Comments 2 min read JS Variables & DatatypesVariables and Datatypes in JavaScript 6 min read Global and Local variables in JavaScript 4 min read JavaScript Let 6 min read JavaScript const 5 min read JavaScript Var Statement 7 min read JS OperatorsJavaScript Operators 5 min read Operator precedence in JavaScript 2 min read JavaScript Arithmetic Operators 5 min read JavaScript Assignment Operators 5 min read JavaScript Comparison Operators 5 min read JavaScript Logical Operators 5 min read JavaScript Bitwise Operators 5 min read JavaScript Ternary Operator 4 min read JavaScript Comma Operator 2 min read JavaScript Unary Operators 4 min read JavaScript in and instanceof operators 3 min read JavaScript String Operators 3 min read JS StatementsJavaScript Statements 4 min read JavaScript if-else 3 min read JavaScript switch Statement 4 min read JavaScript Break Statement 2 min read JavaScript Continue Statement 1 min read JavaScript Return Statement 4 min read JS LoopsJavaScript Loops 3 min read JavaScript For Loop 4 min read JavaScript While Loop 3 min read JavaScript For In Loop 3 min read JavaScript for...of Loop 3 min read JavaScript do...while Loop 4 min read JS Perfomance & DebuggingJavaScript | Performance 4 min read Debugging in JavaScript 4 min read JavaScript Errors Throw and Try to Catch 2 min read JS ObjectObjects in Javascript 4 min read Object Oriented Programming in JavaScript 3 min read JavaScript Objects 6 min read Creating objects in JavaScript 5 min read JavaScript JSON Objects 3 min read JavaScript Object Reference 4 min read JS FunctionFunctions in JavaScript 4 min read How to write a function in JavaScript ? 4 min read JavaScript Function Call 2 min read Different ways of writing functions in JavaScript 3 min read Difference between Methods and Functions in JavaScript 3 min read Explain the Different Function States in JavaScript 3 min read JavaScript Function Complete Reference 3 min read JS ArrayJavaScript Arrays 7 min read JavaScript Array Methods 7 min read Best-Known JavaScript Array Methods 6 min read Important Array Methods of JavaScript 7 min read JavaScript Array Reference 4 min read Like