私の質問は、コールバック/約束またはグローバル変数の代わりのスマートな解決法です。JavaScriptのコールバック/プロミスまたはグローバル変数の代替手段
状況:私はイベント駆動のプログラムを持っています。私は関数A
が後で必要となる値v
を計算することを知っています。 A
はプログラムの開始時に呼び出されます。機能B
は、後でイベントによってトリガーされる場合とされない場合があります。
質問:B
はA
ではなく、いくつかのイベントによって呼び出されることはありませんので、私は、コールバックを使用せずにB
へA
からv
を渡すことができますどのように。グローバル変数(since they are bad)の使用を避けるにはどうすればよいですか?
'B'が' A'のスコープにない場合、グローバル変数は一般的に唯一のオプションです。彼らは過度に使われるべきではありませんが、時には彼らは正しいことです。 – Barmar
@Barmarご意見ありがとうございました。私はこの質問に対する答えであることを恐れていました。しかし、待ちましょう。たぶん、私たちが考慮しなかったことの他の提案があります。 – User12547645
'A'はシンクですか、非同期ですか? 「A」の呼び出し元は、何らかの形で「B」に値を単に注入することができますか?イベントハンドラとして 'B'を設定するとき?両者の間に何かが共有されていますか?彼らはどちらも同じクラスのメンバーですか? – deceze