function foo(x) {
console.log(arguments)
} //foo(1) prints [1]
mais
var bar = x => console.log(arguments)
donne l'erreur suivante lorsqu'il est invoqué de la même manière:
Uncaught ReferenceError: arguments is not defined
function foo(x) {
console.log(arguments)
} //foo(1) prints [1]
mais
var bar = x => console.log(arguments)
donne l'erreur suivante lorsqu'il est invoqué de la même manière:
Uncaught ReferenceError: arguments is not defined
Les fonctions fléchées n'ont pas cela car l'objet arguments
-like ressemblant à un tableau était une solution de contournement pour commencer, que ES6 a résolue avec un paramètre de repos:
var bar = (...arguments) => console.log(arguments);
arguments
n'est en aucun cas réservé ici, mais simplement choisi. Vous pouvez l'appeler comme vous le souhaitez et il peut être combiné avec des paramètres normaux:
var test = (one, two, ...rest) => [one, two, rest];
Vous pouvez même aller dans l'autre sens, illustré par cette fantaisie s'appliquent:
var fapply = (fun, args) => fun(...args);
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.