問題タブ [closures]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - ここでグローバル変数の代わりに Javascript クロージャを使用できますか?
現在のセットアップ:
クロージャを使用できますか?
javascript - クロージャはコールバックとどう違うのですか?
コールバックについて質問し、別の質問にたどり着きました(コメントを参照)。クロージャはコールバックとどう違うのですか?
javascript - JavaScript のスコープとクロージャー
私は頭をクロージャーに巻き込もうとしています(どこかに冗談があります)、これに出くわしました:
これはどのように作動しますか?関数を括弧に入れる目的は何ですか? 後で空の括弧が表示されるのはなぜですか?
javascript - JavaScriptでの入れ子関数のメモリ使用量
私はjavascriptのクロージャをある程度理解していますが、ネストされた関数をどのように処理するかについてはよくわかりません。例えば:
関数を呼び出すたびに新しいクロージャが作成されることは知ってa
いますが、そのクロージャには、渡された無名関数の新しいインスタンスも含まれていsomeFunction
ますか?代わりにffを実行した方がよいでしょうか。
javascript - この jQuery コード スニペットはメモリ リークを引き起こしますか?
次のjqueryコードがメモリリークを引き起こすかどうか疑問に思っています:
私の理解で$('tr:last', parent)
は、DOMオブジェクトである最後の行ですが、匿名関数では、クロージャーはこのDOMオブジェクトをスコープに持っているため、DOMとjsオブジェクトの間に循環参照があります。
しかし、本当にリークがあるとすれば、Manning が発行している人気の本「jQuery in Action」にそのようなコードがたくさんあることがわかります。jQueryコーディングの有害な「ベストプラクティス」ですか?
しかし、私の理解が正しいかどうかはわかりません。コメントと訂正をお願いします。ありがとう!
javascript - JavaScript はローカル変数によるクロージャをサポートしていませんか?
私はこのコードについて非常に困惑しています:
私の理解では、印刷する必要があります0,1,2,3,4
(これはクロージャーの概念ではありませんか?)。
代わりに、それは印刷し5,5,5,5,5
ます。
Rhino と Firefox を試してみました。誰かが私にこの振る舞いを説明してもらえますか?
javascript - Javascript でプライベート インスタンス変数にアクセスする静的パブリック メソッド
私はディアスの本 Pro JavaScript Design Patterns を読んでいます。素晴らしい本。私自身は決してプロではありません。私の質問: プライベート インスタンス変数にアクセスできる静的関数を使用できますか? 私のプログラムにはたくさんのデバイスがあり、あるデバイスの出力を別のデバイスの入力に接続できます。この情報は、入力配列と出力配列に格納されます。これが私のコードです:
Device.connect はデバイスの出力および入力配列にアクセスできないため、これは機能していないようです。それを公開するデバイスに特権メソッド(pushToOutputsなど)を追加せずにそれらに到達する方法はありますか?
ありがとう!スティーブ。