这类似于我的实际问题,但我觉得说明我需要解决的问题,而不会使事情复杂化.
我需要通过迭代2d数组来创建一个对象数组.2d数组看起来像下面的"sampleArray".
let sampleArray = [
["open",2],
["high",3],
["low",5],
["close", 10],
["volume", 20],
["open",20],
["high",30],
["low",50],
["close", 100],
["volume", 21],
["open",21],
["high",33],
["low",51],
["close", 1],
["volume", 2],
["open",7],
["high",8],
["low",5],
["close", 11],
["volume", 22]
];
Run Code Online (Sandbox Code Playgroud)
我目前正在格式化一组特别丑陋的API数据,并将数据展平为二维数组.我现在需要的是将这些值放入一个包含5个对象的数组中,其中每个对象的数据属性由具有该特定标签的所有值填充.
newObject = [
{
data: [2,20,21, ...]
label: "open"
},
{
data: [3,50, ...]
label: "high"
},
{
data: [etc...]
label: "low"
},
{
data: [etc...]
label: "close"
},
{
data: [etc...]
label: "volume"
}
]
Run Code Online (Sandbox Code Playgroud)
我大约需要3个小时才能完成这项工作,并且觉得我这一切都错了,我不断得到一个错误,即newArray [i] ["label"]未定义,我明白为什么会发生这种情况(没有对象)该属性存在YET,我只是不确定如何表达这个想法(如果具有该标签的对象尚不存在,创建它并将该匹配值添加到它的value属性)在javascript中.
function makeArray(array) {
let newArray …Run Code Online (Sandbox Code Playgroud)