Hone logo
Hone
Problems

Implementing a Constant Function in JavaScript

A constant function, also known as a pure function, always returns the same output for the same input and has no side effects. This challenge asks you to implement a JavaScript function that behaves as a constant function, demonstrating a fundamental concept in functional programming and ensuring predictable behavior in your code. Understanding constant functions is crucial for writing reliable and testable applications.

Problem Description

You are tasked with creating a JavaScript function named constantFunction. This function should accept a single argument, value, and always return that same value regardless of how many times it's called with the same value. The function must be a true constant function; it should not modify any external state or have any observable side effects.

Key Requirements:

  • The function must be named constantFunction.
  • It must accept a single argument, value.
  • It must return the same value that was passed as an argument.
  • The function must not have any side effects (e.g., modifying global variables, logging to the console, or performing I/O operations).

Expected Behavior:

When called with a specific value, the function should consistently return that value. Multiple calls with the same value should yield the same result.

Edge Cases to Consider:

  • value can be of any JavaScript data type (number, string, boolean, object, array, null, undefined).
  • Consider how the function should behave if value is null or undefined. Returning null or undefined respectively is acceptable.

Examples

Example 1:

Input: 5
Output: 5
Explanation: The function receives the number 5 and returns it unchanged.

Example 2:

Input: "hello"
Output: "hello"
Explanation: The function receives the string "hello" and returns it unchanged.

Example 3:

Input: null
Output: null
Explanation: The function receives null and returns null.

Example 4:

Input: [1, 2, 3]
Output: [1, 2, 3]
Explanation: The function receives an array and returns the same array.

Constraints

  • The function must be implemented in JavaScript.
  • The function must not use any external libraries or frameworks.
  • The function must be concise and efficient.
  • The function must not have any side effects.

Notes

This problem focuses on the core concept of a constant function. Think about how to ensure that the function's behavior is entirely determined by its input and that it doesn't rely on or modify any external state. The simplest solution is often the best.

Loading editor...
javascript