問題タブ [anonymous-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.
model-view-controller - 配置に応じて機能することを拒否するMATLAB関数
温度を変換する非常に単純なGUIをMATLABで作成しました。これは、学生のクラスのチュートリアルとして機能することを目的としています。しかし、奇妙なことが起こりました。他のMVCデザインパターンと同様に、モデルオブジェクト、ビューオブジェクト、およびコントローラー関数があります。GUIの出力フィールド(変換された温度)を設定するために、コントローラー関数自体でこの行を実行できます。
set(views.outputTextField,'string',num2str(round(model.outTemp)));
ここviews.outputTextField
で、は変換された温度を表示するGUIテキストフィールドであり、model.outTemp
は変換された温度です。かなり簡単です。ビューオブジェクトにはすべてのGUIuicontrolへの参照があり、これにより、モデルオブジェクトで新しく変換された温度でフィールドが更新されます。
ただし、ビューオブジェクトにビュー関数を入れたいので、次のような行を作成しようとしました。
以前と同じ行ですが、ビューオブジェクトの無名関数になっています。このようにして、コントローラーから関数を単純に呼び出し、views.updateOutputField();
ビューロジックをコントローラーロジックから除外することができます。しかし、この方法は機能しません!(関数で動作しget()
ます。)
代わりに、次のことを行う必要があります。
匿名関数を使用するだけでなく、関数を(冗長に)分離することで、再び機能します。何!?これは私には意味がありません。ビューオブジェクトとモデルオブジェクトはグローバルであり、無名関数はで機能しget()
ます。誰かがここで何が起こっているのか手がかりを持っていますか?
javascript - カプセル化された無名関数の構文を説明する
概要
JavaScriptでカプセル化された無名関数の構文の背後にある理由を説明できますか?なぜこれが機能するのですか:(function(){})();
しかし、これは機能しません:function(){}();
?
私が知っていること
JavaScriptでは、次のような名前付き関数を作成します。
匿名関数を作成して変数に割り当てることもできます。
匿名関数を作成し、それを角かっこで囲んですぐに実行することで、コードのブロックをカプセル化できます。
これは、モジュール化されたスクリプトを作成するときに、Greasemonkeyスクリプト、jQueryプラグインなどの場合のように、現在のスコープまたはグローバルスコープが競合する可能性のある変数で乱雑になるのを防ぐのに役立ちます。
今、私はこれが機能する理由を理解しています。角かっこは内容を囲み、結果のみを表示します(これを説明するためのより良い方法があると確信しています)(2 + 2) === 4
。
わからないこと
しかし、なぜこれが同じように機能しないのか理解できません。
それを説明してもらえますか?
javascript - jQueryで匿名関数の使用を避ける方法はありますか?
次のようなコードの塊がある場合:
匿名関数を取り除き、次のように言う方法はありますか?
matlab - MATLABで無名関数を使用するとパフォーマンスが低下します...他の人がこれに気づきましたか?
MATLABコードをリファクタリングするために、関数型プログラミングに触発された引数(MATLABが無名関数と呼ぶもの)として関数を渡すと思いました。
ただし、パフォーマンスはかなり深刻な打撃を受けているようです。以下の例では、さまざまなアプローチを比較しています。(サブ関数を使用できるようにするために、コードスニペットは関数でラップされています)
私が得た結果は、直接の場合は0秒、サブ関数を使用した場合はほぼ0秒、無名関数を使用した場合は5秒です。私は、OS X 10.6、C2D 1.8GHzでMATLAB7.7(R2007b)を実行しています。
誰かがコードを実行して、何が得られるかを確認できますか?特にWindowsでのパフォーマンスに興味があります。
javascript - addEventListener 匿名関数の Javascript 変数スコープ
各 div をクリックすると、div 1 がクリックされた場合は「1」、div 2 がクリックされた場合は「5」で警告されます。これははるかに大きなアプリケーションで必要になるため、このコードをできるだけ簡単にしようとしました。
ご協力いただきありがとうございます!:-)
python - How can I approximate Python's or operator for set comparison in Scala?
After hearing the latest Stack Overflow podcast, Peter Norvig's compact Python spell-checker intrigued me, so I decided to implement it in Scala if I could express it well in the functional Scala idiom, and also to see how many lines of code it would take.
Here's the whole problem. (Let's not compare lines of code yet.)
(Two notes: You can run this in the Scala interpreter, if you wish. If you need a copy of big.txt, or the whole project, it's on GitHub.)
Specifically, I'm wondering if there's anything cleaner I can do with the correct
function. In the original Python, the implementation is a bit cleaner:
Apparently in Python, an empty set will evaluate to Boolean False
, so only the first of the candidates to return a non-empty set will be evaluated, saving potentially expensive calls to edits1
and known_edits2
.
The only solution I would come up with is the version you see here, where the Seq
of anonymous functions are called until one returns a non-empty Set
, which the last one is guaranteed to do.
So experienced Scala-heads, is there a more syntactically concise or better way to do this? Thanks in advance!
design-patterns - XSLT テンプレートをインラインで呼び出す方法はありますか
XSLT テンプレートをインラインで呼び出す方法は? たとえば、代わりに:
次のように、XSLT 組み込みの関数呼び出しスタイルを使用できますか?
javascript - 匿名のコールバックパラメータを使用せずにjQueryイベントにアクセスする方法
通常、イベントにアクセスする必要がある場合は、コールバック関数で指定されたパラメーターを使用してアクセスします。
しかし、代わりに(ここに入るには複雑すぎる理由で)、匿名のコールバック関数を使用したくありませんが、代わりに次のように呼び出す関数を指定します。
したがって、functionToCall()のパラメーターとして「ev」を含めたことに気付くでしょうが、匿名のコールバック関数を使用していないため、これは明らかに機能しません。ただし、functionToCall()内でそのクリックイベントにアクセスする必要があります(ev.targetを確認するため)。私の質問は、このイベントにアクセスするにはどうすればよいですか?私がこのようなことをすることができればそれは素晴らしいでしょう:
と
どんなアイデアでも大歓迎です。ありがとう。
scala - Scala 匿名関数を定義するときにブロックを使用できますか?
私はこの方法を持っています:
私はこれを次のように呼び出すことができることを知っています:
中括弧を使用して呼び出す方法はありますか? 何かのようなもの:
または、別のメソッドでそれを記述してに渡す必要がありmyMethod
ますか?