Je suis un novice de Javascript alors s'il vous plaît excusez la question fondamentale. Je travaille sur "Javascript professionnel pour les développeurs Web" et dans le chapitre 3, section "Comprendre les arguments", il traite de l'accès aux arguments de la fonction avec le mot clé arguments [].Javascript: arguments de fonction et arguments []
Un des exemples montre que vous pouvez modifier les valeurs des arguments []:
function twoNums(num1, num2) {
arguments[1] = 10;
console.log(arguments[0] + num2);
}
twoNums(4,8); output = 14
Mais il poursuit en disant que « Cet effet est à sens unique: changer l'argument nommé ne donne pas lieu un changement à la valeur correspondante dans les arguments. "
Cependant, la modification du code pour:
function twoNums(num1, num2) {
num2 = 10;
console.log(arguments[0] + arguments[1]);
}
twoNums(4,8); output = 14
résultats dans la même sortie de sorte que la valeur dans 'arguments [1]' est en train de changer définitivement.
Est-ce:
- une erreur dans le livre?
- une erreur dans ma compréhension?
- Quelque chose qui a changé en Javascript depuis l'écriture du livre?
Merci,
Neil
RÉPONDU: Une combinaison de réponses a résolu mon problème. Merci tout le monde.
sonne comme un vieux livre. – dandavis
Est-ce le livre? http://www.amazon.com/Professional-JavaScript-Developers-Wrox-Guides/dp/0764579088 Il semble un peu vieux pour dev web 2005 ... Ou est-ce une édition ultérieure? Dans tous les cas, votre exemple est de savoir comment cela devrait fonctionner. – elclanrs
Il est écrit "troisième édition, 2012" dans la préface. – neilbaldwin