Maison > interface Web > js tutoriel > le corps du texte

Exemples d'application d'objet d'arguments JavaScript_compétences Javascript

WBOY
Libérer: 2016-05-16 16:36:29
original
983 Les gens l'ont consulté

objet arguments

Dans le code de fonction, en utilisant les arguments d'objet spéciaux, les développeurs peuvent accéder aux noms de paramètres sans les nommer explicitement.

Par exemple, dans la fonction sayHi(), le premier paramètre est message. Cette valeur est également accessible avec arguments[0], qui est la valeur du premier argument (le premier argument est en position 0, le deuxième argument est en position 1, et ainsi de suite).

Ainsi, la fonction peut être réécrite sans nommer explicitement les paramètres :

function sayHi() {
if (arguments[0] == "bye") {
return;
}

alert(arguments[0]);
}
Copier après la connexion

Nombre de paramètres de détection

Vous pouvez également utiliser l'objet arguments pour détecter le nombre de paramètres de la fonction, il suffit de référencer la propriété arguments.length.

Le code suivant affichera le nombre de paramètres utilisés dans chaque appel de fonction :

function howManyArgs() {
alert(arguments.length);
}

howManyArgs("string", 45);
howManyArgs();
howManyArgs(12);
Copier après la connexion

Le code ci-dessus affichera « 2 », « 0 » et « 1 » dans l'ordre.

Remarque : Contrairement à d'autres langages de programmation, ECMAScript ne vérifie pas si le nombre de paramètres passés à une fonction est égal au nombre de paramètres définis par la fonction. Les fonctions définies par le développeur peuvent accepter n'importe quel nombre d'arguments (jusqu'à 255, selon la documentation de Netscape) sans générer d'erreurs. Tous les arguments manquants seront transmis à la fonction comme non définis et les fonctions supplémentaires seront ignorées.
Simuler la surcharge de fonctions

Utilisez l'objet arguments pour déterminer le nombre de paramètres transmis à la fonction afin de simuler une surcharge de fonction :

function doAdd() {
if(arguments.length == 1) {
alert(arguments[0] + 5);
} else if(arguments.length == 2) {
alert(arguments[0] + arguments[1]);
}
}
Copier après la connexion

doAdd(10); //Sortie "15"
doAdd(40, 20); //Sortie "60"

Lorsqu'il n'y a qu'un seul paramètre, la fonction doAdd() ajoute 5 au paramètre. S'il y a deux paramètres, les deux paramètres sont ajoutés et leur somme est renvoyée. Ainsi, doAdd(10) génère "15", tandis que doAdd(40, 20) génère "60".

Bien que ce ne soit pas aussi efficace qu'une surcharge, cela suffit pour contourner cette limitation d'ECMAScript.

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal