関數(shù)內(nèi)のグローバル変數(shù)に直接値を代入するのではなく、関數(shù)のパラメータとしてグローバル変數(shù)を直接使用し、関數(shù)內(nèi)のパラメータに値を代入したい。ハードコーディングされていますが、テストで値を割り當(dāng)てることはできません。
s = 1; a(s); function a(m){ e = m; b(e); function b(f){ f = 2; } } alert(s);
結(jié)果は、s は依然として 1 です。関數(shù)內(nèi)で s に直接値を代入できることは知っていますが、それを書くのは難しすぎませんか? この方法で s に値 2 を代入するにはどうすればよいでしょうか?後で使用するために別のグローバル変數(shù)を渡すと便利です。
あなたは、関數(shù)のパラメーターの受け渡し、つまり値の受け渡しの意味を理解していません。これは、S が関數(shù) A に 1 を與えるだけで、関數(shù) A には関與しないことを意味します。平たく言えば、S を関數(shù)にコピーした場合、それをどのように操作しても、S 自體には影響しません。