Function.arguments
Obsolète: Cette fonctionnalité a été supprimée des standards du Web. Bien que quelques navigateurs puissent encore la supporter, elle est en cours d'éradication. Ne l'utilisez ni dans d'anciens projets, ni dans de nouveaux. Les pages et applications Web l'utilisant peuvent cesser de fonctionner à tout moment.
La propriété function.arguments
fait référence à un objet dont la structure est semblable à celle d'un tableau dont les éléments correspondent aux arguments passés à une fonction. En lieu et place, il faut désormais utiliser arguments
. Cette propriété est interdite en mode stricte à cause de l'optimisation de la queue des appels (tail call optimization).
Description
La syntaxe function.arguments
est obsolète. La méthode recommandée pour accéder à l'objet arguments
disponible au sein des fonctions est simplement de faire référence à la variable arguments
.
Si on utilise la récursivité (autrement dit si une fonction f
apparaît plusieurs fois dans la pile d'appels ou encore qu'une fonction f
s'appelle elle-même), la valeur de f.arguments
représentera les arguments correspondant à l'appel le plus « récent » de la fonction.
La valeur de la propriété arguments
est normalement null
si la fonction n'est pas « en cours » (au sens où elle aurait été appelée et qu'elle n'ait pas fini son exécution).
Exemples
function f(n) {
g(n - 1);
}
function g(n) {
console.log("avant : " + g.arguments[0]);
if (n > 0) f(n);
console.log("après : " + g.arguments[0]);
}
f(2);
console.log("fonction terminée : " + g.arguments);
// On aura l'affichage de :
// avant : 1
// avant : 0
// après : 0
// après : 1
// fonction terminée : null
Spécifications
No specification found
No specification data found for javascript.builtins.Function.arguments
.
Check for problems with this page or contribute a missing spec_url
to mdn/browser-compat-data. Also make sure the specification is included in w3c/browser-specs.
Compatibilité des navigateurs
BCD tables only load in the browser