How to use named arguments in JavaScript functions?

In this article, we will learn how to use named arguments in JavaScript, and how we can use it to significantly enhance code readability and maintainability.

JavaScript allows us to simulate named arguments, which eliminate the need for the order of parameters to matter during function execution. We can then access the arguments by name inside the function definitions.

Let's look at some of the examples and methods to understand the concept better:

What are Named Arguments?

Named arguments allow you to pass parameters to a function by explicitly specifying the parameter name rather than relying on the order of arguments. While JavaScript doesn't have native named arguments like some other languages, we can achieve similar functionality using object destructuring.

Method 1: Using Object Destructuring

We can pass an object as an argument to the function to achieve named-argument functionality. This uses the object's properties to represent named values.

<html>
<head>
   <title>Named Arguments Example</title>
   <script>
      function greet({ name, age, city }) {
         console.log(`Hello ${name}! You are ${age} years old and from ${city}.`);
      }

      greet({ name: 'John', age: 30, city: 'New York' });
   </script>
</head>
<body>
   <h1>Named Arguments in JavaScript</h1>
</body>
</html>
Hello John! You are 30 years old and from New York.

Method 2: Passing Object Variables

By using destructuring, we can extract specific values from an object and assign them to individual variables, achieving named arguments-like behavior in JavaScript.

<html>
<head>
   <title>Object Variable Example</title>
   <script>
      function greet({ name, age, city }) {
         console.log(`Hello ${name}! You are ${age} years old and from ${city}.`);
      }

      const person = { name: 'Alice', age: 25, city: 'London' };
      greet(person);
   </script>
</head>
<body>
   <h1>Named Arguments with Object Variables</h1>
</body>
</html>
Hello Alice! You are 25 years old and from London.

Method 3: Using Default Parameters

By using a configuration object with default values, we can create more flexible functions that accept optional parameters with fallback values.

<html>
<head>
   <title>Default Parameters Example</title>
   <script>
      function createProduct({ name, price, color = 'black', category = 'general' }) {
         console.log(`Product: ${name}`);
         console.log(`Price: $${price}`);
         console.log(`Color: ${color}`);
         console.log(`Category: ${category}`);
         console.log('---');
      }

      createProduct({ name: 'Phone', price: 500 });
      createProduct({ name: 'Shirt', price: 20, color: 'blue' });
      createProduct({ name: 'Laptop', price: 1200, color: 'silver', category: 'electronics' });
   </script>
</head>
<body>
   <h1>Named Arguments with Default Values</h1>
</body>
</html>
Product: Phone
Price: $500
Color: black
Category: general
---
Product: Shirt
Price: $20
Color: blue
Category: general
---
Product: Laptop
Price: $1200
Color: silver
Category: electronics
---

Advantages of Named Arguments

  • Order Independence: Parameters can be passed in any order

  • Self-Documenting: Code becomes more readable and self-explanatory

  • Optional Parameters: Easy to handle optional parameters with default values

  • Maintenance: Adding new parameters doesn't break existing function calls

Comparison

Approach Order Matters? Default Values? Readability
Traditional Parameters Yes Limited Low
Named Arguments (Object) No Yes High

Conclusion

Although JavaScript doesn't have native named arguments, using object destructuring provides similar functionality with enhanced code readability and maintainability. This approach is particularly useful for functions with multiple parameters or optional configurations.

Updated on: 2026-03-15T23:18:59+05:30

2K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements