Ich arbeite mit einem Objekt Objekte. Ich muss es als ein Objekt behalten, weil ich mit einer API arbeite, die erfordert, dass ich es so behalte (dieser Teil ist nicht fraglich).Move Schlüssel im Objekt des Objekts nach oben (Indizes tauschen)
Dies ist ein Beispiel Schema meiner Aufgabe:
const obj = {
1: { name: 'Initial Step 1', stepNumber: 1 },
2: { name: 'Initial Step 2', stepNumber: 2 },
3: { name: 'Initial Step 3', stepNumber: 3 },
}
Ich brauche eine moveUp
Funktion implementiert, die jeweils die stepNumber
und obj
als den ersten und zweiten Parameter nehmen.
Diese moveUp
Funktion muss grundsätzlich ein inneres Objekt mit dem Objekt darüber tauschen. Z.B. moveUp(2, obj)
sollte die obj
wie folgt ändern:
{
1: { name: 'Initial Step 2', stepNumber: 1 },
2: { name: 'Initial Step 1', stepNumber: 2 },
3: { name: 'Initial Step 3', stepNumber: 3 },
}
Die stepNumber
wird nie an die Schnittstelle zu 1
dank gleich ich gebaut habe.
Wie soll ich meine moveUp
Funktion implementieren?
Ich brauche im Grunde diese:
export const moveUp = (stepNumber, obj) => {
// I need help here
};
Dank!
Barry, wenn Sie auf der angegebenen Reihenfolge angewiesen sind, Sie gehen in ein Problem laufen. Objektschlüssel behalten keine konsistente Reihenfolge [Hier] (https://stackoverflow.com/questions/6959817/changing-the-order-of-the-object-keys) ist eine Diskussion darüber. – Beau
Sollte Ihre Schrittnummer für 'Initial Step 2' auf 2 gesetzt sein? –
@Callam Was soll dieser Snippet tun/anzeigen? O.o Die entsprechende Funktion ist leer ... – Andreas