How to use default parameters in JavaScript functions

· Category: JavaScript

Short answer

Default parameters assign a fallback value when an argument is undefined, supporting literals, expressions, and references to earlier parameters.

Steps

  1. Set a simple default: javascript function greet(name = 'Guest') { return `Hello, ${name}`; }
  2. Use expressions as defaults: javascript function fetchData(url, timeout = 1000 * 5) { /* ... */ }
  3. Reference earlier parameters: javascript function createUser(name, greeting = `Hi, ${name}`) { return { name, greeting }; }
  4. Combine with destructuring: javascript function draw({ x = 0, y = 0, color = 'black' } = {}) { console.log(x, y, color); }

Tips

  • Defaults are only applied when the argument is undefined, not null or other falsy values.
  • Default expressions are evaluated left-to-right at call time.

Common issues

  • Forgetting to default the destructured object itself (= {}) causes errors when called with no arguments.
  • Mutating a default array or object affects future calls because defaults are evaluated per call but mutable references persist if reassigned internally.