Potrzebuję przekształcić tablicę obiektów w obiekt. Zrobiłem z poniższą logiką. Czy istnieje najlepszy sposób na poradzenie sobie z tym?Najlepszy sposób konwertowania tablicy obiektów na obiekt?
var before = [{
"x": ["2015-10-14T01:59:59.999+05:30", "2015-10-14T03:59:59.998+05:30", "2015-10-14T05:59:59.997+05:30", "2015-10-14T07:59:59.996+05:30", "2015-10-14T09:59:59.995+05:30", "2015-10-14T11:59:59.994+05:30", "2015-10-14T13:59:59.993+05:30", "2015-10-14T15:59:59.992+05:30", "2015-10-14T17:59:59.991+05:30", "2015-10-14T19:59:59.990+05:30", "2015-10-14T21:59:59.989+05:30", "2015-10-14T23:59:59.988+05:30"]
}, {
"CleanCoal": ["0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00"]
}, {
"Middelings": ["0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00"]
}, {
"Prime": ["0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00"]
}, {
"SpiralProd": ["0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00", "0.00"]
}];
var after = {};
for (var i = 0; i < before.length; i++) {
var keys = Object.keys(before[i]);
after[keys] = before[i][keys];
}
console.log(after)
document.writeln(JSON.stringify(after))
Twoja wersja nie jest prawdą, jeśli '{a: 1, b: 4, ....}' obiektu klucz będzie więcej niż jeden. –
Twoje podejście działa tylko dlatego, że wewnętrzne tablice mają tylko jeden klucz. W przypadku więcej niż jednego zawodzi. Potrzebujesz drugiej pętli. – Yoshi