私はJavaScriptの匿名関数とスコープについて学習していますが、何かを理解しようとしていますが、ちょっと立ち往生してしまいました。 オブジェクトの1行で匿名のjavascript関数を呼び出す方法は?
I次の三つの機能があります。var funcA = function (value) {
test = value;
};
var funcB = function (value) {
this.test = value;
};
var funcC = function (func,value) {
var item = {};
//single line invocation
}
は、私がこのような二次の呼び出しの結果が異なること、代わりに有していると(それが//single line invocation
言う)のjavascriptの単一の行を記述しようとしています同じ効果:funcBのではなくthis.test
を参照しているので
funcC(funcA, "set");
funcC(funcB, "set");
、それはローカル(インスタンス)の値を変更しますので、我々はfuncCの「アイテム」オブジェクトを利用できるという意味があります。私は異なる結果が得られステートメントの面でいずれかの運を持っていなかったしかし
item.(function(func,value){func(value)})(func, value);
:私はのようないくつかの無名関数「もの」をやってみました。 (ノード(.js)を使用してコードを実行すると、test
とthis.test
の両方の値が変更されます)。
これをよりよく理解するための助けがあれば、素晴らしいことでしょう。事前に
おかげで、
ParagonRG