簡體   English   中英

更改數組javascript的格式

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM