2017-02-13 3 views
-2

Ich bin neu in JS.Konvertieren eines Kartenobjekts in Array von Objekten in Java-Skript

Ich habe ein Kartenobjekt.

Karte {$ Central: 265.045, $ East: 178.576, $ Süden: 103.926, $ Westen: 272.264}

Ich mag es von Objekten in einem Array konvertieren

[{region: "Central", Wert: 265045}, {Region: "East", Wert: 178576}, {Region: "South", Wert: 103926}, {Region: "West", Wert: 272264}]

Antwort

1

Sie können for ... in verwenden, um über die Schlüssel eines Objekts (Map) zu iterieren. Es sieht auch so aus, als ob Ihr Objekt Eigenschaften hat, die mit einem Dollarzeichen beginnen, und Ihr gewünschtes Ergebnis hat diese entfernt. Sie können dazu verwenden.

var a = []; 
for (var k in map) { 
    a.push({region:k.substring(1), value:map[k]}); 
} 
0

können Sie forEach Rückruf bei Map

var res = []; 
map.forEach(function(val, key) { 
    res.push({ region: key, value: val }); 
}); 
0

Verwenden for..in-Schleife verwenden, um die Map-Objekt und drücken Sie die Elemente in Array zu durchlaufen. Innerhalb for..in Schleife ein Objekt mit Eigenschaften Region und Wert erstellen, schieben Sie dieses Objekt in ein Array.

<!DOCTYPE html> 
 
<html> 
 
<head> 
 
    <title>For in example</title> 
 
    <script type="text/javascript"> 
 
var map = { 
 
    "$Central": 265045, 
 
    "$East" : 178576, 
 
    "$South" : 103926, 
 
    "$West" : 272264 
 
}; 
 
var arr = []; 
 
for (var prop in map) { 
 
var item = {region : prop.substring(1), value:map[prop]}; 
 
arr.push(item); 
 
} 
 
console.log('Map Object --> ',map); 
 
console.log('Array of objects --> ',arr); 
 
    </script> 
 
</head> 
 
<body> 
 

 
</body> 
 
</html>

Verwandte Themen