JavaScript - Parameters & Defaults

Overview

Estimated time: 20–30 minutes

Define parameters with optional default values. Understand arity and the legacy arguments object.

Learning Objectives

  • Use default parameters and parameter expressions.
  • Know when to use arguments vs rest parameters.

Prerequisites

Default parameters

function greet(name = 'World') {
  return `Hello, ${name}!`;
}

function append(value, list = []) {
  list.push(value); // new array per call
  return list;
}

arguments object

function sum() {
  let total = 0;
  for (let i = 0; i < arguments.length; i++) total += arguments[i];
  return total;
}

Common Pitfalls

  • Default expressions are evaluated at call time, not at definition time.
  • arguments is array-like, not an array; prefer rest parameters for readability.