Skip to content

How to return multiple values from a function in JavaScript

New Courses Coming Soon

Join the waiting lists

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.

→ 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: