我正在挖掘通過量部分代碼(異步模塊的NodeJS),衝進了以下符號:方括號(不是指對象訪問!)
return fn.apply(null, [async.forEachSeries].concat(args));
如果看到了使用方括號很多這種表示法,但不知道它究竟是什麼意思。 這與ES5有關嗎?
問候!
我正在挖掘通過量部分代碼(異步模塊的NodeJS),衝進了以下符號:方括號(不是指對象訪問!)
return fn.apply(null, [async.forEachSeries].concat(args));
如果看到了使用方括號很多這種表示法,但不知道它究竟是什麼意思。 這與ES5有關嗎?
問候!
這真的很簡單。您基本上將兩個數組粘貼在一起,並將所得到的數組作爲第二個參數應用。請參閱:
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/concat
例如爲:
// this should clarify
console.log([1, 2, 3].concat([4, 5]));
這是一個列表。你可以這樣做:
[1,2,3,4,5]
要得到一個JavaScript的列表,並且concat
是一個列表方法。
表達式[async.forEachSeries]
將屬性forEachSeries
放入數組中,然後將該數組與args
數組結合。
哇,好吧,當然我知道數組的字面意思,但是沒有意識到它只是同樣的前進......我現在覺得有點愚蠢。所以上面的代碼基本上和編寫'args.unshift(async.forEachSeries)'一樣;返回fn.apply(null,args);'對嗎? – zaphod1984