Maison >interface Web >js tutoriel >Comprendre JavaScript, les paramètres Rest dans les fonctions
JavaScript sera impliqué dans notre étude ou notre travail, nous devons donc également comprendre JavaScript En parlant de paramètres de repos, ils constituent une grande partie de la fonction. Et les fonctions évoluent constamment. Cet article vous aidera à comprendre et à maîtriser JavaScript. Étudions-le attentivement. Les fonctions
JavaScript peuvent prendre n'importe quel nombre d'arguments. Contrairement à d'autres langages tels que C# et Java, vous pouvez transmettre n'importe quel nombre de paramètres lors de l'appel d'une fonction JavaScript. Les fonctions JavaScript autorisent un nombre inconnu de paramètres de fonction. Avant ECMAScript 6, JavaScript disposait d'une variable pour accéder à ces nombres de paramètres inconnus ou variables, qui était un objet de type tableau, et non un tableau. Considérez le code suivant pour comprendre la variable arguments :
function add(){ var result = 0; for(let i=0;i<arguments.length;i++){ result = result + arguments[i]; } return result; } var r = add(6,9,3,2); console.log(r); var t = add(7,56,9); console.log(t);
Comme vous pouvez le voir, l'objet arguments est utilisé pour accéder aux paramètres de fonction inconnus ou variables. Même si les arguments utilisent l'attribut length et les crochets, il ne s'agit pas d'un véritable tableau JavaScript. Vous ne pouvez pas utiliser d'autres méthodes de tableau JavaScript telles que pop, push, slice, etc. sur l'objet arguments. Certains problèmes lors de l'utilisation des arguments sont :
L'objet arguments de la fonction JavaScript n'est pas un véritable tableau JavaScript, vous ne pouvez donc pas utiliser d'autres méthodes de tableau telles que pop, push, slice, etc.
Il est difficile d'accéder à l'objet arguments d'une fonction externe dans une fonction interne. Pour y accéder, vous devez attribuer la fonction arguments de la fonction externe dans une variable puis l'utiliser dans la fonction interne.
Si vous souhaitez utiliser l'objet arguments comme tableau, vous devez le convertir manuellement via Aarry.prototype.slice.
ECMAScript 6 introduit une nouvelle fonctionnalité, les paramètres Rest, qui représentent un nombre inconnu de paramètres sous forme de tableau dans une fonction. Non seulement il représente des paramètres supplémentaires sous forme de tableaux, mais il résout également de nombreux problèmes liés aux objets arguments. Réécrivez la fonction add ci-dessus en utilisant le paramètre rest.
function add(...theArgs){ var result = 0; for(let i=0;i<theArgs.length;i++){ result = result + theArgs[i]; } return result; } var r = add(6,9,3,2); console.log(r); var t = add(7,56,9); console.log(t);
Vous pouvez définir les paramètres de repos comme...theArgs ou...args. Si le dernier paramètre de fonction nommé est préfixé par ... (trois points), alors il devient le paramètre restant de la fonction. Le paramètre rest d'une fonction JavaScript est un tableau JavaScript pur. Dans le code ci-dessus, ...theArgs est le paramètre restant de la fonction add car c'est le seul paramètre nommé et est également préfixé par ... (trois points). Puisque le paramètre rest est un tableau JavaScript, vous pouvez effectuer des opérations telles que push, pop, etc. sur le paramètre rest theArgs, comme indiqué dans le code suivant :
function add(...theArgs){ theArgs.push(10); var result = 0; for(let i=0;i<theArgs.length;i++){ result = result + theArgs[i]; } var lastItem = theArgs.pop(); console.log(lastItem); return result; }
Le paramètre rest de la fonction JavaScript peut également fonctionner avec d'autres paramètres. Si vous ne souhaitez pas inclure de paramètres spécifiques dans le tableau de paramètres restant, vous devrez peut-être utiliser d'autres paramètres nommés dans la fonction. Considérons le bloc de code suivant :
function add(num1, num2, ...theArgs){ console.log(num1); console.log(num2); console.log(theArgs.length); } var r = add(6,9,3,2); var t = add(7,56,9);
Pour le premier appel de fonction, 6 et 9 seront respectivement attribués à num1 et num2. Pour le deuxième appel de fonction, 7 et 56 seront attribués à num1 et num2. Le paramètre qui démarre le troisième paramètre sera affecté au tableau de paramètres restant. Gardez à l’esprit que les deux premiers paramètres ne feront pas partie du tableau de paramètres restant. Ainsi, si vous envisagez d'inclure toutes les valeurs dans les paramètres de repos, vous devez les définir dès le début comme paramètres nommés séparés par des virgules. Le code donné ci-dessous entraînera l'erreur :
function add(num1, ...theArgs,num2){ console.log(num1); console.log(num2); console.log(theArgs.length); }
Dans le code ci-dessus, le paramètre rest n'est pas le dernier paramètre, donc JavaScript générera une erreur. Le paramètre rest doit être le dernier paramètre formel.
JavaScript vous permet de détruire les paramètres de repos, ce qui signifie que vous pouvez décompresser les données des variables de repos en différents noms de variables noms. Veuillez regarder le code ci-dessous :
function add(...[a,b,c]){ return a+b+c; } var r = add(6); console.log(r); var t = add(7,56,9); console.log(t);
Le premier appel de fonction attribuera a = 6, b = non défini, c = non défini, le deuxième appel de fonction attribuera a = 7, b = 56, c= 9. Dans cet exemple, la fonction ignorera tous les arguments supplémentaires transmis.
Le paramètre rest des fonctions JavaScript est une énorme amélioration par rapport à l'objet arguments utilisant l'argument inconnu de la fonction . Il s'agit d'un tableau JavaScript pur, vous pouvez donc y utiliser toutes les méthodes de tableau. Vous pouvez décompresser les données des variables restantes en variables nommées. Vous pouvez donner n’importe quel nom aux paramètres rest, ce qui constitue une autre amélioration majeure par rapport à l’utilisation du mot-clé arguments.
Dans le prochain article de la série « Comprendre JavaScript », nous présenterons les paramètres par défaut dans les fonctions JavaScript, alors restez à l'écoute.
Comprendre JavaScript, le paramètre Rest dans la fonction, ça se termine ici. Invitez tout le monde à étudier et à discuter ensemble :
Lecture connexe :
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!