我正在學習javascript匿名函數和範圍,並試圖理解某些內容,但已變得有點卡住了。如何在1行中的對象上調用匿名javascript函數?
我有以下三個功能:
var funcA = function (value) {
test = value;
};
var funcB = function (value) {
this.test = value;
};
var funcC = function (func,value) {
var item = {};
//single line invocation
}
我試圖寫javascript的單行(在那裏說://single line invocation
),使得以下兩個調用的結果會有所不同,而不是具有同樣的效果:
funcC(funcA, "set");
funcC(funcB, "set");
由於funcB被引用this.test
相反,它是有道理的,這將是改變地方(實例)的值,所以我們可以利用在跳到FuncC的「項目」的對象。我試着做一些匿名函數「東西」,如:
item.(function(func,value){func(value)})(func, value);
不過,我還沒有得到任何運氣,導致不同結果的聲明條款。 (即當我使用節點(.js)運行我的代碼時,test
和this.test
值都會更改)。
任何幫助更好地理解這一點會很好。
由於提前,
ParagonRG