TEMA
about_Return
DESCRIPCIÓN BREVE
Produce la salida del ámbito actual, que puede ser una función,
un script o un bloque de script.
DESCRIPCIÓN DETALLADA
La palabra clave Return produce la salida de una función, un
script o un bloque de script. Se puede utilizar para salir de un
ámbito en un punto concreto, devolver un valor o indicar que se
ha alcanzado el final del ámbito.
Quizás los usuarios familiarizados con lenguajes como C o C#
deseen utilizar la palabra clave Return para que la lógica de
salir de un ámbito sea explícita.
En Windows PowerShell, los resultados de cada instrucción se
devuelven como salida, incluso si no hay ninguna instrucción que
contenga la palabra clave Return. Los lenguajes como C o C# devuelven
únicamente el valor o los valores especificados por la palabra clave
Return.
Sintaxis
La sintaxis de la palabra clave Return es la siguiente:
return [<expresión>]
La palabra clave Return puede aparecer sola o puede ir seguida
de un valor o una expresión, tal y como se indica a continuación:
return
return $a
return (2 + $a)
Ejemplos
En el ejemplo siguiente, se utiliza la palabra clave Return
para salir de una función en un punto concreto si se cumple una
instrucción condicional:
function ScreenPassword($instance)
{
if (!($instance.screensaversecure)) {return $instance.name}
<instrucciones adicionales>
}
foreach ($a in @(get-wmiobject win32_desktop)) { ScreenPassword($a) }
Este script comprueba cada cuenta de usuario. La función
ScreenPassword devuelve el nombre de cualquier cuenta de
usuario que no tenga un protector de pantalla protegido mediante
contraseña. Si el protector de pantalla está protegido mediante
contraseña, la función completa cualquier otra instrucción que deba
ejecutarse y Windows PowerShell no devuelve ningún valor.
En Windows PowerShell, se devuelven valores incluso si no se
utiliza la palabra clave Return. Se devuelven los resultados de cada
instrucción. Por ejemplo, las instrucciones siguientes devuelven el
valor de la variable $a:
$a
return
La instrucción siguiente también devuelve el valor de $a:
return $a
El ejemplo siguiente incluye una instrucción para notificar al
usuario que la función está realizando un cálculo:
function calculation {
param ($value)
"Espere. Se está realizando el cálculo..."
$value += 73
return $value
}
Si se ejecuta esta función y se asigna el resultado a una
variable, el efecto será el siguiente:
C:\PS> $a = calculation 14
C:\PS>
No se muestra la cadena "Espere. Se está realizando el
cálculo...". En su lugar, se asigna la cadena a la variable $a,
como en el ejemplo siguiente:
C:\PS> $a
Espere. Se está realizando el cálculo...
87
La función devuelve la cadena informativa y el resultado del
cálculo, los cuales se asignan a la variable $a.
VEA TAMBIÉN
about_Functions
about_Scopes
about_Script_Blocks