[英]change format of a array javascript
如何更改數組的格式? 想法是將array2放置為等於array1,我的意思是方括號和逗號的格式。
也就是說,將“:”更改為“,”,將{}更改為[]
var array1=[["Sep",687918],["Nov",290709],["Dic",9282],["Ene",234065]]
var array2=[{"Sep":687918},{"Nov":290709},{"Dic":9282},{"Ene":348529}]
這項工作適合您嗎?
var array1=[["Sep",687918],["Nov",290709],["Dic",9282],["Ene",234065]]; var array2 = {}; array1.forEach(function(element){ array2[element[0]]=element[1]; });
最合適的方法可能是使用map()
方法。 使用此功能,您可以通過操縱原始數組的每個項目來構造一個新數組。 在這里了解更多。
var array2=[{"Sep":687918},{"Nov":290709},{"Dic":9282},{"Ene":348529}];
var array1 = array2.map(function (item) {
var key = Object.keys(item)[0];
var value = item[key];
return [key, value];
});
console.log(array1);
// returns [["Sep", 687918], ["Nov", 290709], ["Dic", 9282], ["Ene", 348529]]
“我的意思是方括號和逗號的格式”
方括號表示這是一個數組,並且數組元素應以逗號分隔。 實際上,您要將數組數組轉換為對象數組。 這是簡短的ES6解決方案:
var array1 = [["Sep",687918],["Nov",290709],["Dic",9282],["Ene",234065]]; var newArray = []; array1.forEach(item => newArray.push({[item[0]]: item[1]})) console.log(newArray)
您可以使用array .reduce
方法執行此操作:
var array1=[["Sep",687918],["Nov",290709],["Dic",9282],["Ene",234065]] var array2 = array1.reduce((arr2, current) => { arr2.push({[current[0]]: current[1]}); return arr2 }, []); console.log(array2)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.