Heim >Web-Frontend >js-Tutorial >Wie tausche ich Schlüssel und Werte von JSON-Elementen mit JavaScript aus?

Wie tausche ich Schlüssel und Werte von JSON-Elementen mit JavaScript aus?

WBOY
WBOYnach vorne
2023-08-23 22:41:05745Durchsuche

如何使用 JavaScript 交换 JSON 元素的键和值?

Hier lernen wir, Schlüssel und Werte von JSON-Elementen mithilfe von JavaScript auszutauschen. In JavaScript speichern Objekte Schlüssel-Wert-Paare. Daher können wir den Schlüssel und den Wert genauso vertauschen wie zwei normale Variablen.

In diesem Tutorial lernen wir verschiedene Möglichkeiten kennen, alle Schlüsselwerte eines JSON-Elements mithilfe von JavaScript auszutauschen.

Verwenden Sie eine for-Schleife

Wir können eine for-Schleife verwenden, um die Schlüssel eines JSON-Objekts zu durchlaufen. Danach können wir über den Schlüssel auf den Wert des Objekts zugreifen. Daher können wir jeden Schlüssel und Wert im Objekt austauschen.

Zusätzlich müssen wir ein neues leeres Objekt erstellen und die Schlüssel und Werte dieses Objekts nach dem Austausch speichern.

Grammatik

Benutzer können die for-Schleife verwenden, um Schlüssel und Werte in JSON-Elementen gemäß der folgenden Syntax auszutauschen.

for (let key in object) {
   let value = object[key];
   new_obj[value] = key;
} 

In der obigen Syntax verwenden wir den Schlüssel, um vom Objekt aus auf seinen Wert zuzugreifen. Für new_obj verwenden wir den Wert als Schlüssel und den Schlüssel als Wert.

Beispiel 1

Im folgenden Beispiel erstellen wir ein Objekt, das eindeutige Schlüssel-Wert-Paare enthält. Zusätzlich erstellen wir ein leeres new_obj-Objekt, um die ausgetauschten Schlüssel und Werte zu speichern. Danach verwenden wir eine for-Schleife, um die Schlüssel des Objekts zu durchlaufen. In der for-Schleife greifen wir über das JSON-Element auf den Wert eines bestimmten Schlüssels zu.

Wir fügen die Schlüssel und Werte des Objekts zum new_obj-Objekt hinzu, verwenden jedoch den Wert als Schlüssel und den Schlüssel als auszutauschenden Wert. In der Ausgabe kann der Benutzer beobachten, dass die Schlüssel-Wert-Paare von new_obj ausgetauscht werden.

<html>
<body>
   <h2>Using the <i> for loop </i> to swap keys and values of JSON elements</h2>
   <div id = "output"> </div>
   <script>
      let output = document.getElementById('output');
      let object = {
         "key1": true,
         "key2": 10,
         "key3": "hello",
         "key4": 40
      }
      let new_obj = {};
      for (let key in object) {
         let value = object[key];
         new_obj[value] = key;
      }
      output.innerHTML += "The old object is " + JSON.stringify(object) + "<br/>";
      output.innerHTML += "The new object after swapping the key and values is " + JSON.stringify(new_obj) + "<br/>";
   </script>
</body>
</html>

Verwenden Sie die Methoden Object.keys() und forEach()

Mit der Methode Object.keys() können wir die Schlüssel eines Objekts im Array-Format abrufen. Anschließend können wir die Methode forEach() verwenden, um das Schlüsselarray zu durchlaufen.

Während wir alle Schlüssel durchlaufen, können wir auf den Wert eines bestimmten Schlüssels zugreifen und ihn als Schlüssel des neuen Objekts verwenden.

Grammatik

Benutzer können die Methoden Object.keys() und forEach() gemäß der folgenden Syntax verwenden, um alle Schlüssel und Werte des JSON-Objekts auszutauschen.

Object.keys(student_obj).forEach((objectKey) => {
   swapped_obj[ student_obj[objectKey] ] = objectKey;
})

In der obigen Syntax verwenden wir „student_obj[objectKey]“, um den Wert vom Objekt abzurufen, der als Schlüssel des swapped_obj-Objekts dient.

Beispiel 2

In diesem Beispiel haben wir das Objekt student_obj erstellt, das verschiedene Attribute von student und deren Werte enthält. Danach verwenden wir die Methoden Object.entries() und forEach(), um alle Schlüssel und Werte des Objekts auszutauschen und im swapped_obj-Objekt zu speichern.

<html>
<body>
   <h2>Using the <i> Object.keys() and forEach() methods </i> to swap keys and values of JSON elements.</h2>
   <div id = "output"> </div>
   <script>
      let output = document.getElementById('output');
      let student_obj = {
         "name": "Shubham",
         "age": 22,
         "hobby": "Writing",
         "Above18": true,
         "id": "waewr34fg7y657"
      }
      let swapped_obj = {};
      Object.keys(student_obj).forEach((objectKey) => {
         let keyvalue = student_obj[objectKey];
         swapped_obj[keyvalue] = objectKey;
      })
      output.innerHTML += "The old object is " + JSON.stringify(student_obj) + "<br/>";
      output.innerHTML += "The new object after swapping the key and values is " + JSON.stringify(swapped_obj) + "<br/>";
   </script>
</body>
</html>

Verwenden Sie die Methoden Object.entries() und map()

Mit der Methode Object.entries() können wir alle Schlüssel und Werte eines Objekts im Array-Format abrufen. Nach dem Austausch der alten Schlüssel-Wert-Paare können wir die Methode map() verwenden, um die neuen Schlüssel-Wert-Paare abzubilden.

Wir können Array-Destrukturierungseigenschaften verwenden, um jedes Schlüssel-Wert-Paar auszutauschen.

Grammatik

Benutzer können die Methoden Object.entries() und map() gemäß der folgenden Syntax verwenden, um die Schlüssel und Werte von JSON-Elementen auszutauschen.

const result = Object.entries(table).map(
   ([prop, propValue]) => { return [propValue, prop]; }
);
let newObject = Object.fromEntries(result);

Wir haben die Reihenfolge jedes Schlüssel-Wert-Paares in der obigen Syntax umgekehrt. So werden Schlüssel zu Werten und Werte zu Schlüsseln. Zusätzlich erstellen wir mit der Methode Object.fromEntries() ein Objekt aus den Einträgen von Schlüsseln und Werten.

Beispiel 3

In diesem Beispiel definieren wir ein Tabellenobjekt, das Tabelleneigenschaften enthält. Wenn der Benutzer auf die Schaltfläche klickt, ruft er die Funktion swapKeyValues() auf.

In der Funktion swapKeyValues() tauschen wir jedes Schlüssel- und Wertepaar des Objekts aus und speichern sie im FinalObject-Array. Danach konvertieren wir das finalObject-Array mit der Methode Object.fromEntries() in ein JSON-Objekt und speichern es in der newObject-Variablen

<html>
<body>
   <h2>Using the <i> Object.entries() and map() methods </i> to swap keys and values of JSON elements.</h2>
   <div id = "output"></div>
   <button onclick = "swapKeyValues()"> Swap Object key values</button>
   <script>
      let output = document.getElementById('output');
      let table = {
         "id": "1234",
         "color": "blue",
         "size": "6 feet",
         "legs": "6",
         "chairs": "8",
      }
      function swapKeyValues() {
         output.innerHTML += "The initial object is " + JSON.stringify(table) + "<br/>";
         let objectEntries = Object.entries(table);
         const finalObject = objectEntries.map(
            ([prop, propValue]) => { return [propValue, prop]; }
         );
         let newObject = Object.fromEntries(finalObject);
         output.innerHTML += "The new object after swapping the key and values is " + JSON.stringify(newObject) + "<br/>";
         return;
      }
   </script>
</body>
</html>

Wir haben drei Möglichkeiten kennengelernt, die Schlüssel und Werte von JSON-Elementen auszutauschen. Darüber hinaus können wir die Methoden array.reduce() und Object.entries() verwenden, um die Schlüssel und Werte von Objekten auszutauschen.

Das obige ist der detaillierte Inhalt vonWie tausche ich Schlüssel und Werte von JSON-Elementen mit JavaScript aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen