2017-03-06 83 views
1

我想對下面的JSon進行轉換。輸入JSon數組可以是任何大小。我知道它的一個基本問題,但我找不到重複。爲json數組中的每個值添加一個鍵javascript

var input = [{ 
    "value": 1 
}, { 
    "value": 2 
}] 

var output = [{ 
    "key": { 
     "value": 1 
    } 
}, { 
    "key": { 
     "value": 2 
    } 
}] 

感謝所有的幫助。

+0

你在這個轉變JSON數組? - –

回答

2

嘗試使用這個,這應該解決您的問題

output = input.map(value => ({ "key": value })); 
console.log(output); 

我用ES6爲了簡單,但確實完全一樣。

+1

你可以把對象包裝在'input.map(value =>({「key」:value}));' –

+0

對。謝謝:) 現在更新了答案。 –

+0

對箭頭函數語法的另一種損害... – mhodges

3

創建一個新數組,並使用Array#forEachkey = keyinput中當前迭代的對象作爲值推送一個對象。

var input = [{value:1},{value:2}], 
 
    result = []; 
 
    input.forEach(v => result.push({ 'key': v })); 
 
    
 
    console.log(result);

-1

我認爲這將是最老校友和動手這樣做的方式。

var input = [{ 
 
    "value": 1 
 
}, { 
 
    "value": 2 
 
}], 
 
output = [], 
 
newItem, 
 
i = 0, ii = input.length; 
 
    
 
    
 
for(i; i<ii; i++){ 
 
    newItem = {}; 
 
    newItem.key = {"value":input[i].value}; 
 
    output.push(newItem); 
 
} 
 
    
 
console.log(output)

相關問題