Maison  >  Article  >  interface Web  >  Exemple d'explication de l'objet arguments en Javascript

Exemple d'explication de l'objet arguments en Javascript

不言
不言avant
2019-03-05 14:03:452001parcourir

Ce que cet article vous apporte est un exemple d'explication de l'objet arguments en Javascript. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

Aujourd'hui, nous allons examiner l'objet et les propriétés des arguments. L'objet arguments ne peut pas être créé explicitement et l'objet arguments n'est disponible qu'au début de la fonction. L'objet arguments de la fonction n'est pas un tableau, et accéder aux paramètres individuels revient à accéder aux éléments du tableau. L’index n est en fait l’un des paramètres de l’attribut 0…n de l’objet arguments.

1 function add(a,b){
2     console.log(typeof arguments);
3     for(var attr in arguments){
4         console.log(attr+":"+arguments[attr]);
5     }
6     return a+b;
7 }
8 
9 add(10,20)

 

Comme vous pouvez le voir sur la sortie, les arguments sont en fait un objet, pas un tableau, et ce tableau a 2 attributs, nommés 0 et 1. Leurs valeurs ​​sont respectivement 10 et 20

En JavaScript, la liste des paramètres est divisée en paramètres formels et paramètres réels. Les paramètres formels sont les paramètres spécifiés lors de la définition de la fonction, et les paramètres réels sont les paramètres spécifiés lors de l'appel de la fonction. Par exemple, dans l'exemple ci-dessus, vous pouvez appeler la fonction via

alert(add(10))

Un seul paramètre est spécifié ici, c'est-à-dire que le nombre de paramètres réels est de 1 et le nombre de paramètres formels est de 2. En JavaScript, il n'est pas obligatoire que le nombre de paramètres réels soit le même que le nombre de paramètres formels. Le code ci-dessus peut également être exécuté. Sortez simplement NaN

En pratique, nous pouvons le faire, déterminez d'abord le nombre de paramètres

 1 function add(a,b){
 2     
 3     //add.length也可以获取形参个数,但实际中用arguments.callee.length
 4     if(arguments.length==arguments.callee.length){
 5         return a+b;
 6     }else{
 7         return "参数错误";
 8     }
 9     
10 }

arguments.length : obtenez le nombre de paramètres réels

arguments .callee.length : obtenez le nombre de paramètres formels

arguments.callee : fait référence à la fonction elle-même

les arguments sont souvent utilisés pour les opérations récursives

Par exemple, trouvez un 1 à La somme de n

 1 function fn(n){
 2     
 3     if(n==1){
 4         return 1;
 5     }else{
 6         return n+arguments.callee(n-1);
 7     }
 8 }
 9 
10 alert(fn(100))

donne 5050

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer