問題タブ [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.

0 投票する
4 に答える
5615 参照

javascript - JavaScript 匿名関数とグローバル変数

私は賢くなり、独自の待機関数を作成しようと考えました (これを行うには他の方法があることに気付きました)。だから私は書いた:

無限ループを除いて、これはすべて機能します。調べてみると、While ループを取り出すと、予想どおり匿名関数が 5 回入力されます。したがって、明らかにグローバル変数countdowntimerが減少します。

ただし、 countdowntimerの値を確認すると、While ループではダウンすることはありません。これは、無名関数が While ループで呼び出されているにもかかわらずです!

明らかに、どういうわけか、countdowntimerの 2 つの値が浮かんでいますが、なぜでしょうか?

編集

わかりましたので、Javascript がシングル スレッドであることを (今では) 理解しています。そして、それは - 一種の - 私の質問に答えます。しかし、この単一スレッドの処理のどの時点で、 setIntervalを使用したいわゆる非同期呼び出しが実際に行われるのでしょうか? 関数呼び出しの間だけですか?そうではありません。実行に時間がかかる関数はどうでしょうか。

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

c# - クラスに新しいプロパティを追加したいのですが、匿名関数を使用できますか?

私は2つのリストを持っています:

したがって、プロパティ Count を User に追加したいと思います (現在はありません。この時点で実装を変更することはできません)。

json を返す Web サービス呼び出しの場合、User オブジェクトを変更したいと考えています。

基本的に、ユーザーをコレクションに追加します。したがって、json にシリアル化する前に、変更されたユーザー クラスをコレクションに (匿名関数を介して) 追加したいと考えています。

次のようなものです:

これは可能ですか?どうやって?

0 投票する
4 に答える
3982 参照

scala - scala クロージャ/無名関数の複数のリターン ポイント

私が理解している限り、Scala では無名関数に複数のリターン ポイントを設定する方法はありません。つまり、

を発生させerror: return outside method definitionます。(そして、それを上げなければ、コードは私が望んでいるように機能しません。)

私ができる1つの回避策は次のとおりです

ただし、これを行う別の「受け入れられた」方法があるかどうかを知りたいです。内部関数の名前なしで行く可能性はありますか?

continue(使用例は、ループ内で値を持つ構造をエミュレートすることです。)

編集

doMoreStuffその部分は実際には次のようになる可能性があるため、elseステートメントを回避する必要があることを信じてください。

–<code>else 構造しかif利用できない場合、これは簡単にめちゃくちゃになります。

もちろん、最初に示した単純な例では、 を使用するだけの方が簡単ですelse。申し訳ありませんが、これは明らかだと思いました。

0 投票する
5 に答える
7362 参照

javascript - JavaScript無名関数への引数

somearrayまたはそのインデックスの1つを無名関数に渡すにはどうすればよいですか?somearrayはすでにグローバルスコープにありますが、それでもsomearray[i]が未定義になっています

0 投票する
7 に答える
3633 参照

php - php インスタンスに無名関数を設定する

PHP を使い始めたばかりで、匿名関数をクラス インスタンスに追加する方法があるかどうか疑問に思っています。

たとえば、言ってみましょう...

私が望んでいるのは、同じコードの一部を多数の異なるアプリケーションで再利用し、特定のインスタンスで関数を「スワップアウト」して置き換えることができるようにすることです。

私はphp5.3を使用しています(匿名関数は機能するはずですが、私が使用している方法ではありません)。

お時間をいただき、誠にありがとうございました!!

-GK

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

javascript - Javascript:なぜここで無名関数を使用するのですか?

私はJITのコードを閲覧していましたが、これを見ました:

それらの無名関数の目的は何でしょうか?彼らはすぐに範囲外になりますよね?

使用する理由:

それ以外の:

これはスーパーエリートJSハックですか?

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

matlab - MATLAB で無名関数を使用して出力をスキップする

2 つの出力を返す m-file-function から無名関数を作成したいとします。m-file-function から 2 番目の出力のみを返すように無名関数を設定することは可能ですか?

例: ttest2t/f と確率の 2 つの出力を返します。で t 検定を使用したい場合cellfun、確率を収集することだけに関心があるかもしれません。つまり、次のようなものを書きたいと思います。

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

javascript - JavaScript: 変更パラメータをコールバックに渡す

さて、ここで楽しい問題です。次のようなオブジェクト配列があります。

ここで、これらのオブジェクトを繰り返し処理して、jQuery の $.getJSON() メソッドを使用してサーバーから特定のアドレスに情報を読み込みます。コールバック関数を使って手の込んだ操作を行った後、'dest' で指定された ID を持つ div に HTML を配置する必要があります。 .

通常、コールバックに追加のデータを指定する必要がある場合は、無名関数を使用しますが、これは問題なく機能します。ここでの問題は、destination の変数ポインターが同じままであるように見えるため、各コールバックが起動するときに、destination が常に "#div2" に等しいことです。

私は次のことを試しました:

としても

しかし、何らかの理由で Firefox はまだ匿名関数で個別のデータを作成していないようです。各反復でデータへの一意の参照を取得する方法はありますか?

0 投票する
4 に答える
12226 参照

c# - SortedSet匿名のIComparerコンストラクターで機能していません

匿名関数がメソッドの引数として機能するのに、コンストラクターの引数では機能しないのはなぜですか?


を作成するList<string>と、次の署名を持つSortメソッドがあります。

ここで、次のように機能します。

SortedSetには、同様のシグネチャを持つコンストラクタがあります。

ただし、コンストラクターで無名関数を使用すると、これは失敗します。以下は無効です。

ソートクラスの作成は期待どおりに機能します。

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

javascript - 関数呼び出し自体が機能しない(無限ループ、Javascript)

ここでの回答に従って、配列内のすべての画像の読み込みが完了したときに(.completeを使用して)待機してからメッセージを取得しようとしています。そのため、以下のような無限ループを設定しました。ただし、これを実行すると、checkForAllImagesLoaded()が定義されていないというエラーが発生します。このコードはブックマークレットを介して実行されているため、すべて匿名関数構造にラップされています(以下を参照)。その構造の外で関数と変数を再定義すると、機能します。しかし、それはブックマークレットを書くための悪い方法のようです。setTimeout後も関数を認識できるように、これを修正するにはどうすればよいですか?