Parameters & Default Values

In JavaScript, parameters are the named variables listed in a function’s definition. They act as placeholders for the values (arguments) passed to the function when it is called.

Functions can have default values for parameters. If no argument or undefined is passed for that parameter, the default value is used instead.

Illustration of parameters_default_values
Illustration of parameters_default_values

💡 Why Use Default Values?

They make your functions more flexible and prevent errors by ensuring parameters always have valid values.

Basic Syntax

Define default values directly in the parameter list:

📌 Deep Dive: Setting Default Parameters

JAVASCRIPT
function greet(name = "Guest") {
  console.log("Hello, " + name + "!");
}

greet();          // Hello, Guest!
greet("Alice");   // Hello, Alice!
Output
Hello, Guest!
Hello, Alice!

How Default Values Work

If you pass undefined explicitly, the default value is used. If you pass null or any other value, that value is used instead.

📌 Deep Dive: Passing undefined vs null

JAVASCRIPT
function multiply(a, b = 2) {
  return a * b;
}

console.log(multiply(5));         // 10 (b uses default 2)
console.log(multiply(5, undefined)); // 10 (b uses default 2)
console.log(multiply(5, null));  // 0  (b is null, treated as 0)
Output
10
10
0

Multiple Parameters with Defaults

You can assign default values to any number of parameters:

📌 Deep Dive: Multiple Default Parameters

JAVASCRIPT
function createUser(name = "Anonymous", age = 18) {
  return { name, age };
}

console.log(createUser());               // { name: "Anonymous", age: 18 }
console.log(createUser("John"));         // { name: "John", age: 18 }
console.log(createUser("Jane", 25));     // { name: "Jane", age: 25 }
Output
{ name: "Anonymous", age: 18 }
{ name: "John", age: 18 }
{ name: "Jane", age: 25 }
Default Parameter Behavior
Argument PassedParameter Value Used
Value (e.g. 5, "text")Passed value
undefinedDefault value
nullnull (no default)
No argumentDefault value

⚠️ Important Note

Default values are only used when the argument is undefined or omitted. Other falsy values like null, 0, or "" do NOT trigger defaults.

Summary

  • Parameters are variables in function definitions.
  • Default values provide fallback values if no argument or undefined is passed.
  • Defaults make functions easier to use and more robust.
  • Passing null or other falsy values does not trigger default parameters.