funciones suelen tener una lista de argumentos , ejecutar un código en base a estos argumentos, y, o bien realizar una operación o devolver un valor. Cuando una función devuelve un valor , esto significa que la función en un sentido emite un valor , que un programador puede asignar a una variable o utilizar en otro cálculo . El valor devuelto puede ser un tipo de datos escalar ( tal como un número entero ) , o un objeto . Por ejemplo , la siguiente función toma un número y devuelve el número multiplicado por tres:
triple función (x )
{ return x * 3 ;
< p >}
funciones anidadas
dentro de una función , el programador puede definir una nueva función para realizar alguna tarea . El proceso de definición es exactamente la misma , pero el uso de la función difiere . Cuando un programador declara una función en el ámbito global , se puede utilizar esta función durante todo el programa . Cuando un programador declara una función dentro de otra función , sin embargo , el único lugar en el que puede utilizar esa función dentro de la función que la declaró pulg El siguiente ejemplo ilustra este punto:
triple función (x )
{
función
addThree ( y) {
vuelta y + y + y;
}
regreso addThree (x ) //devuelve el resultado regreso de " addThree "
}
doble función (x )
{
addThree (x ) //ilegal, addThree puede sólo puede llamar desde el interior de la " triple" función
Variables y funciones anidadas
la razón funciones no pueden llamar a cualquier función declarada dentro de otras funciones se debe a la interna función no se encuentra en el exterior funciones de "ámbito ". La función " addThree " existe en el ámbito de aplicación de la función de "triple " . la función de " doble " está fuera de alcance de triples , y no puede acceder a sus partes internas . Sin embargo, " addThree " está dentro de alcance " de triple" , y por lo tanto pueden acceder a la parte interna de "triple ". Esto significa que las variables declaradas en el "triple" son justo usar para " addThree ", y la función podría tener este aspecto :
triple función (x )
{
función addThree () {
regreso x + x + x;
}
regreso addThree
Volviendo Otras funciones
Dado que las funciones son objetos, una función puede devolver una función en lugar de datos. Esto significa que ciertas funciones se pueden tomar los datos para dar a otras funciones , anidadas , y devolver esas funciones . Entonces , el programador puede llamar a la función interna de fuera del alcance funciones externa . El siguiente ejemplo detalla cómo funciona esto :
función
out ( x ) {
función
complemento ( y)
return x + y;
}
vuelta adentro;
}
x = a ( 3 ) //x ahora contiene el objeto función " add ( y) ", que tiene un valor x de 3
y = x ( 2 ) //x = " add ( 2 ) " que es 3 + 2 , por lo que y = 5