Skip to content

How to return multiple values from a function in JavaScript

New Course Coming Soon:

Get Really Good at Git

Functions return only one value. How can we simulate returning multiple values from a function?

When we call a function in JavaScript, we can only return one value using the return statement:

const getAge = () => {
  return 37
}

const getName = () => {
  return 'Flavio'
}

How can we return multiple values from a function?

One easy trick is to return an array

const getDetails = () => {
  return [37, 'Flavio']
}

This is fine, and we can get the values in this way thanks to array destructuring:

const [age, name] = getDetails()

Now we have the age and name variables that contain those values.

Note that the order we define those in const [age, name] = getDetails() matters.

We can also return an object and use object destructuring:

const getDetails = () => {
  return { 
    age: 37, 
    name: 'Flavio'
  }
}

const { age, name } = getDetails()

In this case, the order of age and name in const { age, name } = getDetails() does not matter any more, because those are named parameters.

Are you intimidated by Git? Can’t figure out merge vs rebase? Are you afraid of screwing up something any time you have to do something in Git? Do you rely on ChatGPT or random people’s answer on StackOverflow to fix your problems? Your coworkers are tired of explaining Git to you all the time? Git is something we all need to use, but few of us really master it. I created this course to improve your Git (and GitHub) knowledge at a radical level. A course that helps you feel less frustrated with Git. Launching Summer 2024. Join the waiting list!
→ Get my JavaScript Beginner's Handbook
→ Read my JavaScript Tutorials on The Valley of Code
→ Read my TypeScript Tutorial on The Valley of Code

Here is how can I help you: