Derniers tutoriels de développement web
 

JavaScript Function Parameters


Une fonction JavaScript ne réalise aucune vérification sur les valeurs de paramètres (arguments).


Function Parameters et Arguments

Plus tôt dans ce tutoriel, vous avez appris que les fonctions peuvent avoir des parameters :

functionName ( parameter1, parameter2, parameter3 ) {
    code to be executed
}

Function parameters sont les noms énumérés dans la définition de la fonction.

Function arguments sont les valeurs réelles passées à (et reçus par) la fonction.


Règles de paramètres

définitions de fonctions JavaScript ne précisent pas les types de données pour les paramètres.

fonctions JavaScript ne remplissent pas le type de vérification sur les arguments passés.

fonctions JavaScript ne vérifient pas le nombre d'arguments reçus.


La valeur par défaut des paramètres

Si une fonction est appelée avec des arguments manquants (moins déclarée), les valeurs manquantes sont fixés à: undefined

Parfois, cela est acceptable, mais il est parfois préférable d'attribuer une valeur par défaut au paramètre:

Exemple

function myFunction(x, y) {
    if (y === undefined) {
          y = 0;
    }
}
Essayez - le vous - même »

Si une fonction est appelée avec trop d'arguments (plus que déclaré), ces arguments peuvent être atteints en utilisant l'objet arguments.


L'objet arguments

fonctions JavaScript ont un objet intégré appelé l'objet arguments.

L'objet de l'argument contient un tableau des arguments utilisés lorsque la fonction a été appelée (appelée).

De cette façon, vous pouvez simplement utiliser une fonction pour trouver (par exemple) la plus haute valeur dans une liste de numéros:

Exemple

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;
}
Essayez - le vous - même »

Ou créer une fonction pour la somme de toutes les valeurs d'entrée:

Exemple

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;
}
Essayez - le vous - même »

Les arguments sont passés par valeur

Les paramètres, dans un appel de fonction, sont les arguments de la fonction.

Arguments JavaScript sont passés par valeur: La fonction ne reçoit que de connaître les valeurs, pas les emplacements de l'argument.

Si une fonction change la valeur d'un argument, il ne change pas la valeur d'origine du paramètre.

Les modifications apportées à des arguments ne sont pas visibles (réfléchi) en dehors de la fonction.


Les objets sont passés par référence

En JavaScript, les références d'objets sont des valeurs.

À cause de cela, les objets vont se comporter comme ils sont passés par référence:

Si une fonction change une propriété d'objet, il modifie la valeur d'origine.

Changements à propriétés de l' objet sont visibles (réfléchi) en dehors de la fonction.