Ich habe ein Array wie folgt aus:Objekt von Array mit strengen Ordnung wie innerhalb Array
var startArray = [
{value: 2, label: 'label 2'},
{value: 1, label: 'label 1'},
{value: 17, label: 'label 17'},
{value: 15, label: 'label 15'}
];
und ich möchte Erstellen Sie das Objekt wie folgt aus:
var middleObject = {
2: 'label 2',
1: 'label 1',
17: 'label 17',
15: 'label 15'
};
und ich den Code:
startArray.forEach(function(oneOption) {
middleObject[oneOption.value] = oneOption.label;
});
enter code here
ich wurde auch versucht, diesen Code zu verwenden (mit dem gleichen Ergebnis):
for (var oneOption in startArray) {
middleObject[oneOption.value] = oneOption.label;
}
Aber Problem ist, wenn ich diesen Code verwende ich so das Objekt nehmen:
var middleWrongObject = {
1: 'label 1',
2: 'label 2',
15: 'label 15',
17: 'label 17'
};
aber einige später soll ich middleObject
in der Schleife mit der gleichen Reihenfolge wie bei den firstArray
verwendet. Und Eigentum innerhalb middleObject
jedes Mal sollte der Zahlentyp sein. Haben wir eine Methode, um die Reihenfolge für die Eigenschaft innerhalb der middleObject
zu setzen (ohne Set-Eigenschaft "bestellen" und sortieren nach diesem Feld später) Danke für die Hilfe.
warum ein Array nicht anstelle eines Objekts benutzen, die eigentlich keine Ordnung hat? –
Objekteigenschaften haben keine Reihenfolge – hindmost
Weiter zum obigen Kommentar - siehe vorherige Frage http://stackoverflow.com/questions/5525795/does-javascript-guarantee-object-property-order –