Maison > Questions et réponses > le corps du texte
Je souhaite utiliser directement une variable globale comme paramètre d'une fonction, puis attribuer une valeur au paramètre à l'intérieur de la fonction, au lieu d'attribuer directement une valeur à la variable globale à l'intérieur de la fonction, afin que ce ne soit pas difficile. codé, mais le test ne peut pas attribuer de valeur.
s = 1; a(s); function a(m){ e = m; b(e); function b(f){ f = 2; } } alert(s);
Le résultat est que s est toujours égal à 1. Je sais que s peut se voir attribuer une valeur directement dans une fonction, mais ne serait-ce pas trop difficile à écrire ? Comment puis-je attribuer une valeur de 2 à s de cette manière ? Il est pratique de transmettre différentes variables globales pour une utilisation ultérieure.
菜鸟-吉2017-09-04 08:24:51
Vous ne comprenez pas la connotation du passage de paramètres de fonction : passage de valeur, ce qui signifie que S donne juste 1 à la fonction A et n'y participe pas. En termes simples : si vous copiez un S dans une fonction, quelle que soit la manière dont vous l'utilisez, cela n'affectera pas S lui-même.