CoffeeScript攻略4.7:對映陣列
問題
你有一個物件陣列,想把這些物件對映到另一個陣列中,就像Ruby的對映一樣。
方案
使用map()和匿名函式,但不要忘了列表推導。
electric_mayhem = [ { name: "Doctor Teeth", instrument: "piano" },
{ name: "Janice", instrument: "lead guitar" },
{ name: "Sgt. Floyd Pepper", instrument: "bass" },
{ name: "Zoot", instrument: "sax" },
{ name: "Lips", instrument: "trumpet" },
{ name: "Animal", instrument: "drums" } ]
names = electric_mayhem.map (muppet) -> muppet.name
# => [ 'Doctor Teeth', 'Janice', 'Sgt. Floyd Pepper', 'Zoot', 'Lips', 'Animal' ]
討論
因為CoffeeScript支援匿名函式,所以在CoffeeScript中對映陣列就像在Ruby中一樣簡單。
對映在CoffeeScript中是處理複雜轉換和連綴對映的好方法。如果你的轉換如同上例中那麼簡單,那可能將它當成列表推導看起來會清楚一些。
相關文章
- CoffeeScript攻略4.9:篩選陣列陣列
- CoffeeScript攻略4.8:歸納陣列陣列
- CoffeeScript攻略4.10:反轉陣列陣列
- CoffeeScript攻略4.1:從陣列生成字串陣列字串
- CoffeeScript攻略4.6:打亂陣列元素陣列
- CoffeeScript攻略4.3:取得陣列最大值陣列
- CoffeeScript攻略4.4:使用陣列交換變數陣列變數
- CoffeeScript攻略4.5:定義陣列範圍陣列
- 如何高效的處理陣列對映陣列
- Go 語言基礎 陣列、切片、對映Go陣列
- CoffeeScript攻略1.1:嵌入JavaScriptJavaScript
- CoffeeScript攻略1.3:for迴圈
- CoffeeScript攻略3.7:拆分字串字串
- CoffeeScript攻略3.9:匹配字串字串
- 第四章:多維陣列和矩陣 ------------- 4.7 子陣列最大累加和陣列矩陣
- CoffeeScript攻略3.8:字串插值字串
- CoffeeScript攻略3.1:重複字串字串
- CoffeeScript攻略3.4:查詢子字串字串
- CoffeeScript攻略1.2:比較範圍
- CoffeeScript攻略2.4:建立類變數變數
- CoffeeScript攻略2.5:鏈式呼叫物件物件
- 使用 MapStruct 對映列舉Struct
- CoffeeScript攻略3.10:生成唯一ID
- CoffeeScript攻略2.1:克隆物件(深複製)物件
- scala陣列與java陣列對比陣列Java
- CoffeeScript攻略2.3:CoffeeScrip的type函式函式
- PAT-B 1068 萬綠叢中一點紅【對映+陣列】陣列
- 對陣列的操作陣列
- CoffeeScript攻略3.6:大寫單詞首字母
- 陣列filter方法對陣列元素進行過濾陣列Filter
- JavaScript中對陣列和陣列API的認識JavaScript陣列API
- 陣列中的逆序對陣列
- JavaScript 陣列方法對比JavaScript陣列
- CoffeeScript攻略4.2:類似Python的zip函式Python函式
- CoffeeScript攻略3.2:把字串轉換為小寫形式字串
- CoffeeScript攻略3.3:把字串轉換為大寫形式字串
- CoffeeScript攻略3.5:清理字串前後的空白符字串
- 給出分數陣列,得到對應的名次陣列陣列