2014-10-02 66 views
1

對象從C#世界即將陣列選擇一個領域,我已經習慣了做這樣的事情使用CoffeeScript的

var names = persons.select(x=>x.name); 

我現在想要做類似的事情在CoffeeScript的。我有一個對象數組,我想從每個對象中提取一個字段並將其放入一個數組中。我確信我可以使用lambdas來做到這一點,我只是不確定語法是如何工作的。

回答

2

沒有使用lambda表達式,除非您使用本機Array map method(equvivalent到C#的select):

names = persons.map((x) -> x.name) 

然而,對於這個共同的CoffeeScript成語是使用for-loop作爲數組的理解:

names = (x.name for x in persons) 
+0

coffeescript用下劃線或lowdash更好:'names = _(persons).pluck('name')' – 2014-10-03 14:54:31