Búsqueda de sitios web

PowerShell: Cómo devolver múltiples valores de una función


Al crear una función de PowerShell, solo puede usar la declaración return una vez.

Sin embargo, puede especificar varios valores para devolver desde la función utilizando la siguiente sintaxis:

function Add-Multiply {
    Param([int]$first, [int]$second)

    $add_values = $first + $second
    $multiply_values = $first * $second
    
    return @{Add = $add_values; Multiply = $multiply_values}
}

Esta función particular toma dos valores enteros como entrada y luego devuelve la suma de los valores junto con el producto de los valores.

El siguiente ejemplo muestra cómo utilizar esta sintaxis en la práctica.

Ejemplo: cómo devolver varios valores de una función en PowerShell

Supongamos que nos gustaría crear una función que sumará y multiplicará dos valores.

Por ejemplo, si proporcionamos los números 3 y 7 como argumentos, nos gustaría devolver los siguientes valores para la función:

  • Suma: 3 + 7=10
  • Multiplicar: 3 * 7=21

Podemos utilizar la siguiente sintaxis para hacerlo:

function Add-Multiply {
    Param([int]$first, [int]$second)

    $add_values = $first + $second
    $multiply_values = $first * $second
    
    return @{Add = $add_values; Multiply = $multiply_values}
}

La siguiente captura de pantalla muestra cómo utilizar esta sintaxis en la práctica:

Observe que cuando usamos la declaración Sumar-Multiplicar 3 7 la función devuelve el siguiente resultado:

  • Añadir: 10
  • Multiplicar: 21

Podemos crear con éxito una función que devuelve dos valores.

Tenga en cuenta que si cambiamos los números enteros que proporcionamos como argumentos a la función, entonces la función devolverá la suma y los productos actualizados de los dos números.

Por ejemplo, supongamos que usamos la declaración Suma-Multiplicar 10 6 en su lugar:

La función ahora devuelve el siguiente resultado:

  • Añadir: 16
  • Multiplicar: 60

Nota: En este ejemplo creamos una función que devolvió dos valores, pero puedes especificar tantas variables como quieras después de la declaración return para devolver aún más valores.

Artículos relacionados