下記のようにjsファイル内で関数外で定義したグローバル変数を他の、変数(showRelativeCallBack
)の中の、関数(function
)の中のforEach
文に反映させることができません。
(できればforEachに直接引数を渡したいです。)
基本的な質問で申し訳ないのですが、よろしくお願いいたします。
js
1 2var trustId = 'trust'; 3 4~ 5 6var showRelativeCallback = function (data) { 7 8~ 9 10assets.forEach(asset => { 11 console.log(trustId); 12 // = undefined 13} 14 15~ 16 17} 18~
コードが断片的でよく分かりませんが、クロージャからグローバル変数 (に限らず、クロージャを定義したスコープから見える変数) には普通にアクセスできると思いますけど…。
tarotarotarotarさん
サンプルコードは命題が必要とされるコード(スコープ上に当該変数が存在しない)に修正したほうが良いです。
クロージャを歓迎しない気持ちは分かります。
また、コードは省略せずにそれのみで動く形にすると更に良いです。
言葉で説明して理解されないようですとコードを書かなければならず、足りないコードを回答者が補完しなければならなくなります。
補完したコードが質問者の意図と異なる場合は無駄に時間を消費することにもなります。
https://ja.stackoverflow.com/help/minimal-reproducible-example