Parámetros de la función de JavaScript

JavaScript FunciónNo realiza ninguna comprobación sobre el valor de los parámetros.

Parámetros de la función

En un momento anterior en este tutorial, ya has aprendido que las funciones pueden tenerParámetros:

functionName(parameter1, parameter2, parameter3) {
    código a ejecutar
}

Parámetros de la función (parámetros)Se refiere a losNombre

Parámetros de la función (argumentos)Se refiere a los parámetros realesValor

Reglas de parámetros

La definición de función JavaScript no especifica el tipo de datos para los parámetros (parámetros).

Las funciones JavaScript no realizan comprobación de tipo para los parámetros (argumentos) pasados.

Las funciones JavaScript no verifican la cantidad de parámetros (argumentos) recibidos.

Parámetros predeterminados

Si se omite el parámetro en la llamada a la funciónSe omitió el parámetroSi hay menos parámetros declarados, los valores perdidos se establecen en:undefined

A veces esto es aceptable, pero a veces es mejor especificar valores predeterminados para los parámetros:

Ejemplo

function myFunction(x, y) {
    if (y === undefined) {
          y = 0;
    } 
}

Prueba personalmente

Si hay más parámetros en la llamada a la funciónDemasiados parámetrosSi hay más parámetros declarados, se puede usar El objeto argumentspara alcanzar estos parámetros.

El objeto arguments

JavaScript tiene un objeto integrado llamado arguments.

El objeto arguments contiene el array de parámetros utilizado en la llamada a la función.

De esta manera, puedes usar simplemente la función para encontrar el valor más alto en una lista de números (por ejemplo):

Ejemplo

x = findMax(1, 123, 500, 115, 44, 88);
function findMax() {
    var i;
    var max = -Infinity;
    for (i = 0; i < arguments.length; i++) {
        if (arguments[i] > max) {
            max = arguments[i];
        }
    }
    return max;
}

Prueba personalmente

O crea una función para sumar todos los valores de entrada:

Ejemplo

x = sumAll(1, 123, 500, 115, 44, 88);
function sumAll() {
    var i, sum = 0;
    for (i = 0; i < arguments.length; i++) {
        sum += arguments[i];
    }
    return sum;
}

Prueba personalmente

Los parámetros se pasan por valor

Los parámetros en la llamada a la función (parameter) son los parámetros de la función (argument).

Los parámetros de JavaScript se pasan porValorPasar: la función conoce solo el valor, no la posición del parámetro.

Si la función cambia el valor de los parámetros, no cambia el valor original de los parámetros.

Los cambios en los parámetros no son visibles fuera de la función.

Los objetos se pasan por referencia

En JavaScript, las referencias a objetos son valores.

Por lo tanto, el comportamiento del objeto es como si pasaranReferenciaPara pasar:

Si la función cambia las propiedades del objeto, también cambia el valor original.

Los cambios en las propiedades del objeto son visibles fuera de la función.