2012-01-19 38 views
1

我正在挖掘通過量部分代碼(異步模塊的NodeJS),衝進了以下符號:方括號(不是指對象訪問!)

return fn.apply(null, [async.forEachSeries].concat(args)); 

如果看到了使用方括號很多這種表示法,但不知道它究竟是什麼意思。 這與ES5有關嗎?

問候!

回答

2

這真的很簡單。您基本上將兩個數組粘貼在一起,並將所得到的數組作爲第二個參數應用。請參閱:

https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/concat

例如爲:

// this should clarify 
console.log([1, 2, 3].concat([4, 5])); 
+0

哇,好吧,當然我知道數組的字面意思,但是沒有意識到它只是同樣的前進......我現在覺得有點愚蠢。所以上面的代碼基本上和編寫'args.unshift(async.forEachSeries)'一樣;返回fn.apply(null,args);'對嗎? – zaphod1984

0

這是一個列表。你可以這樣做:

[1,2,3,4,5] 

要得到一個JavaScript的列表,並且concat是一個列表方法。

0

這是數組文字的符號。下面的代碼將建立一個數組,4個元素:

var x = [1, 4, 9, 16]; 

數組本身是一個對象,並且具有像concat方法連接兩個陣列和創建新陣列。

1

表達式[async.forEachSeries]將屬性forEachSeries放入數組中,然後將該數組與args數組結合。