1.説明:
関数の配列結果を取得したいのですが、まず func 関数が配列の結果に無名関数を追加します (各無名関数は独自の num を保存します)
しかし、return の後に匿名関数をパラメータ付きで渡しました。これは単に置き換えることと同じです。結果が異なるのはなぜですか?
リーリー以下では return 後の無名関数をパラメータとして渡していますが、取得できません。
リーリー给我你的怀抱2017-06-26 10:52:31
これは非常に単純なスコープの問題です。ループ内で定義された関数の仮パラメータは、この関数内でのみ機能します。
ループや判定条件下で関数を定義しないでください。予期せぬ問題が発生する可能性があります。関数を取り出して定義すると、ロジックがより明確になっていることがわかります。
扔个三星炸死你2017-06-26 10:52:31
Num スコープの問題、JavaScript には関数スコープがあり、num が最初の関数の内側にあり、2 番目の関数が最初の関数の外側にある場合、2 番目の関数は num を取得できません。