Devolver múltiples valores en JavaScript

Anika Tabassum Era 12 octubre 2023
  1. Devolver múltiples valores de una función con matriz en JavaScript
  2. Devolver múltiples valores de una función con objetos en JavaScript
Devolver múltiples valores en JavaScript

Por lo general, una función termina teniendo un caso de devolución. El caso de devolución puede tener un valor o no tener nada que pasar.

En JavaScript, no se admite una función para devolver varios valores. Entonces, para habilitar el empaquetamiento de múltiples valores y pasarlos a través de una función, tomamos la ayuda de matrices y objetos.

Aquí demostraremos el uso de un array para almacenar múltiples valores de función. Y más adelante, también veremos cómo puede usar un objeto para recopilar los valores de la función.

Además, también descubriremos cómo desempaquetar los valores de la función con una asignación de destrucción y una declaración de variables generales.

Devolver múltiples valores de una función con matriz en JavaScript

En este caso, la función getValue tiene dos variables y las pasaremos como un array para devolver.

La declaración de la nueva variable feature almacenará los retornos de la función en forma de array. Como cualquier otro recorrido de array, podemos acceder a los valores con índices.

Más sencillamente, el feature aquí es otro array que coge los valores de sincronización devueltos por la función getValues en forma de array.

Fragmento de código:

function getValues() {
  var hair = 'Short', color = 'Black';
  return [hair, color];
}
var feature = getValues();
var x = feature[0];
var y = feature[1];
console.log(x + ' ' + y + ' Hair');

Producción:

return_multiple_values_with_array

Use Destruir asignación para desempaquetar la matriz

En general, podemos declarar fácilmente variables u objetos para almacenar los elementos del array. Pero es tedioso definir var cada vez para grandes datos.

También puede recorrer un array para acceder a los valores. Aparte de eso, ES6 tiene una nueva adición para desempaquetar elementos de array como el ejemplo a continuación.

Fragmento de código:

function getValues() {
  var hair = 'Short', color = 'Black';
  return [hair, color];
}
var [x, y] = getValues();
console.log(x + ' ' + y + ' Hair');

Producción:

array_destruct

Devolver múltiples valores de una función con objetos en JavaScript

Puede tener fácilmente un par clave-valor para estructurar sus datos con objetos. Para esta unidad de ejemplo, inicializaremos nuevamente la función getValues, y esta vez el caso de devolución estará en un formato de objeto.

Fragmento de código:

function getValues() {
  var hair = 'Long', color = 'Brown';
  return {hair, color};
}
var feature = getValues();
var x = feature.hair;
var y = feature.color;
console.log(x + ' ' + y + ' Hair');

Producción:

objeto_retorno

El bloque de código aquí tiene una feature variable que funciona como un objeto. Posteriormente junto con el método punto(.), llamamos a las claves para acceder a los valores.

Este map requiere explícitamente los nombres de las claves, por lo que los valores correspondientes toman la palabra.

Use Destrucción de asignación para desempaquetar objeto

Un objeto que se ha pasado desde una función se puede desempaquetar declarando la convención ES6: destrucción de la asignación.

Aquí declararemos explícitamente las claves, pero la declaración accederá a los pares de valores directamente desde la función. Revisemos el bloque de código.

Fragmento de código:

function getValues() {
  var hair = 'Long', color = 'Brown';
  return {hair, color};
}
var {hair, color} = getValues();
console.log(hair + ' ' + color + ' Hair');

Producción:

objeto_destrucción

Como puede ver, acabamos de pasar las claves de la función, y cuando las estamos desempaquetando con los nombres de las claves, la salida también muestra los valores correspondientes.

Anika Tabassum Era avatar Anika Tabassum Era avatar

Era is an observer who loves cracking the ambiguos barriers. An AI enthusiast to help others with the drive and develop a stronger community.

LinkedIn Facebook

Artículo relacionado - JavaScript Return

Artículo relacionado - JavaScript Function