問題タブ [self-invoking-function]

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.

0 投票する
2 に答える
45 参照

javascript - 変数にアクセスしようとすると、javascript モジュールが undefined を返すのはなぜですか?

dataデータをdomからきちんと分離し、そのおよびuiオブジェクトのパブリックAPIを返すjavascriptモジュールがあります:

今、このようなデータにアクセスしようとすると:

戻りますundefined。この自己呼び出し関数パターンで何が間違っていますか? これを修正するにはどうすればよいですか?

0 投票する
3 に答える
11281 参照

javascript - 自己呼び出し関数 jQuery

いくつかの場所で、jQuery コードが以下のような自己呼び出し関数でラップされていることに気付きました。なぜこれが行われるのか、どのような場合に役立つのか、またどのような場合に不必要なボイラープレートなのか?

0 投票する
1 に答える
179 参照

javascript - javascriptでよりメモリ効率の良いIIFEは何ですか?

dom is readyの場合にのみ、よりメモリ効率の高い手法を使用して、匿名の自己実行関数を呼び出したいと考えています。また、最適化のために、window および window.jQuery グローバル オブジェクトのローカル スコープ バージョンを使用したいと考えています (ローカル スコープのロードは、グローバルよりも高速です)。

で、このパターンで合ってる?

何か間違ったことをしているのかどうかわかりません...

前もって感謝します!

0 投票する
1 に答える
196 参照

javascript - ガベージ コレクションによるハングを改善する自己呼び出し関数 + クロージャ

このパターンが Javascript ゲームでのガベージ コレクションを最小限に抑えるのに役立つかどうかを判断しようとしています。

次のように定義されたメイン ゲーム ループで呼び出す関数があります。

変数は、コード内の別の場所にあるオブジェクト (または数値) への参照になります。

フレームレートのスタッターを引き起こしているため、ガベージコレクションイベントの頻度と重大度を下げようとしています。

変数をクロージャーに格納する自己呼び出し関数にリファクタリングすると、関数呼び出しごとに変数が再割り当てされるのではなく、再利用されますか? GCに顕著な影響がありますか?

これらはメソッドで割り当てられるオブジェクトではないことに注意してください。他のオブジェクトまたはプリミティブへの参照のみ。

私はそれを試してみましたが、どちらかといえば事態を悪化させたようです。GC がはるかに頻繁に実行され、毎回パフォーマンスにほぼ同じ影響を与えているようです (そして、以前とほぼ同じ量のメモリを収集しています)。

パフォーマンスを低下させる可能性のある、ここで見逃しているものはありますか? これは期待どおりに動作しますか (変数を一度割り当てて、ガベージ コレクションを行わずにそれらを再利用しますか?) それとも何か他のことが起こっていますか?

0 投票する
1 に答える
252 参照

invoke - Vala は自己呼び出しをサポートしていますか?

Vala が Self Invoking をサポートする方法はありますか? クラスかメソッドか?

Javascript は、以下のような自己呼び出しをサポートしています。私が探しているものです。

動的にロードするためにクラスをハッシュマップにロードしようとしています。

0 投票する
1 に答える
113 参照

javascript - (function(){})() と (function(){}()) の違い、無名関数の自己呼び出し

括弧の位置を見てください。違いはありますか?

( 機能 )( )

および ( func( ) )

0 投票する
2 に答える
8126 参照

java - Spring @Transactional Annotation : 自己呼び出し

トランザクションメソッドが同じクラス内から呼び出された場合、トランザクションで実行されないことを私は知っています。Spring はトランザクション メソッドのプロキシを作成し、それらを try-catch ブロックにラップして、例外が発生した場合はロールバックします。次のシナリオを検討してください。

saveABが別のオブジェクトから呼び出され、 で例外が発生したと仮定すると、正常に完了しましたがsaveB、完了しませんでした。私の知る限り、とはトランザクションではありませんが (同じオブジェクトから呼び出されるため)、トランザクションであるため、ロールバックする必要があります。saveAsaveBsaveAsaveBsaveAB

私が理解できないのは、自己呼び出しがトランザクションを壊すと人々が言うのはなぜですか? 呼び出し元のメソッドがトランザクションである限り、すべてが期待どおりに機能するはずではありませんか? ここに欠けているものはありますか?