2016-08-02 5 views
0

У меня есть следующий список массивов.преобразовать массив в массив объектов

var data = [ "USA", "Denmark", "London"]; 

Мне нужно, чтобы преобразовать его в таком виде

var data = [ 
{ "id" : 1, "label": "USA" }, 
{ "id" : 2, "label": "Denmark" }, 
{ "id" : 3, "label": "London" } 
]; 

Может кто-нибудь пожалуйста, дайте мне знать, как этого добиться.

ответ

1

Простая версия:

var convertedData = [] 
for (var i in data){ 
    convertedData.push({id: i+1, label: data[i]}); 
} 

data = convertedData; //if you want to overwrite data variable 
1

Вы можете использовать forEach перебрать массив данных

var data = [ "USA", "Denmark", "London"]; 
var demArray =[]; 
data.forEach(function(item,index){ 
demArray.push({ 
id:index+1, 
label:item 
}) 

}) 
console.log(demArray) 

JSFIDDLE

Смежные вопросы