2014-01-23 50 views
5

如何可以使用lodash陣列,其中最小的代碼變換這樣的數組:優雅的方式來添加屬性以每個元素在

['Alfa','Betta','Gamma','Delta'] 

成:

[ 
{ squad: 'Alfa'}, 
{ squad: 'Betta'}, 
{ squad: 'Gamma'}, 
{ squad: 'Delta'}, 
] 
+6

如何沒有庫 - >'[ '阿爾法', '貝塔', '伽瑪', '德爾塔']圖(功能(EL){ 。返回{隊:埃爾}; });' - > http://jsfiddle.net/TD4TM/ – adeneo

+0

@adeneo您應該添加此作爲答案。 – Pavlo

+1

@Pavlo - 嗯,我沒有發佈它作爲答案,因爲它沒有真正回答這個問題,這是如何用lodash做到這一點,但它在簡單的JavaScript中似乎很容易。你不需要一個圖書館(事實上,你不需要任何東西的圖書館)。 – adeneo

回答

14

在螺-Dash(或下劃線):

_.map(['Alpha', 'Beta', 'Gamma', 'Delta'], function (squad) { 
    return { squad: squad }; 
}); 

在ES5:

['Alpha', 'Beta', 'Gamma', 'Delta'].map(function (squad) { 
    return { squad: squad }; 
}); 

在ES2015:

['Alpha', 'Beta', 'Gamma', 'Delta'].map(squad => ({ squad })); 
-7
<script> 
    var arrayOfSquads=['Alfa','Betta','Gamma','Delta']; 
    var arrayOfThingsThatHaveSquads=new Array(); 
    for(i=0;i<arrayOfSquads.length;i++) 
    { 
     arrayOfThingsThatHaveSquads.push({"squad":arrayOfSquads[i]}); 
    } 
    console.log("What's lodash?"); 
</script> 
+1

lodash與下劃線相似:認爲「低破折號」(下劃線是短劃線「低」) –

+0

這不是很優雅;) – veritas

+3

我總是試圖讓我的代碼難以閱讀,以至於沒有人偷取它。 –

相關問題