Objekt im Array nach Eigenschaftswert in JavaScript suchen

Migel Hewage Nimesha 15 Februar 2024
  1. Objekt im Array nach Eigenschaftswert finden mit der find()-Methode
  2. Objekt im Array nach Eigenschaftswert finden mit der filter()-Methode
  3. Suchen Sie ein Objekt in einem Array nach Eigenschaftswert mit der JavaScript-Schleife for
  4. Objekt im Array nach Eigenschaftswert mit JavaScript for...in-Schleife finden
Objekt im Array nach Eigenschaftswert in JavaScript suchen

Ein Array bezieht sich auf eine geordnete Liste von Werten, die jeweils als durch einen Index angegebenes Element bezeichnet werden. Ein JavaScript-Array kann verschiedene Werte gemischter Typen wie Zeichenfolge, Null oder Boolean enthalten, und die Größe des Arrays ist nicht erforderlich, um anzugeben, wo es automatisch wächst und dynamisch ist.

Betrachtet man das Array-Objekt, speichert es mehrere Werte in einer einzelnen Variablen und einer sequenziellen Sammlung fester Größe von Elementen mit demselben Datentyp. Bei der Angabe eines einzelnen numerischen Parameters mit einem Array-Konstruktor sollte der Benutzer die Anfangslänge des Arrays festlegen.

Die maximal zulässige Länge für ein Array beträgt 4.294.967.295. Obwohl ein Array eine Datensammlung enthält, ist es häufig hilfreicher, sich ein Array als eine Sammlung von Variablen eines ähnlichen Typs vorzustellen.

Außerdem besteht das JavaScript-Array aus verschiedenen Methoden und Eigenschaften, die dazu beitragen, dass ein Programm ohne viel Codierung effizient ausgeführt wird.

In JavaScript können verschiedene Implementierungen verwendet werden, um ein Objekt in einem Array anhand seines Eigenschaftswerts zu finden.

Objekt im Array nach Eigenschaftswert finden mit der find()-Methode

Wir können die Methode find() verwenden, um ein Objekt in einem Array von Objekten in JavaScript anhand seines Eigenschaftswerts zu finden. Hier gibt die Methode find() das erste bereitgestellte Array-Element zurück, das die angegebene Testfunktion erfüllt.

Alle Werte, die die Testfunktion nicht erfüllen, geben undefiniert zurück. Die folgenden Codes zeigen, wie ein Objekt anhand der ID in einem Array von JavaScript-Objekten gefunden wird.

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>JavaScript Find Object In Array By Property Value</title>
</head>

<body>
    <script>
    var sampleArray = [
        {"id": 1, "animal": "Dog"},
        {"id": 2, "animal": "Cat"},
        {"id": 3, "animal": "Bird"},
        {"id": 4, "animal": "Fish"}
    ];

    //getting the object by its id
    var output = sampleArray.find(object => object.id === 3);

    //outputs the animal to be found
    document.write(output.animal);

    </script>
</body>
</html>

Das Schlüsselwort const wird manchmal als gängige Praxis verwendet, um Arrays anstelle von var zu deklarieren.

Hier muss der Benutzer das Tier mit der angegebenen ID finden, und als Ausgabe war das Tier Vogel, das mit der vom Benutzer angegebenen ID (3) übereinstimmt.

Ausgang:

JavaScript Objekt in Array nach Eigenschaftswert suchen – Ausgabe 1

Bei Bedarf kann die Methode findIndex() im folgenden Code verwendet werden, um den Index des übereinstimmenden Objekts im Array zu finden.

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Javascript Find Object In Array By Property Value</title>
</head>

<body>
    <script>
    var sampleArray = [
        {"id": 1, "animal": "Dog"},
        {"id": 2, "animal": "Cat"},
        {"id": 3, "animal": "Bird"},
        {"id": 4, "animal": "Fish"}
    ];

   //getting the index of the object that matches the id
    var objectIndex = sampleArray.findIndex(object => object.id === 3);

    //getting the output as the index and the animal to be found
    document.write(objectIndex + "<br>");
    document.write(sampleArray[objectIndex].animal);

    </script>
</body>
</html>

Hier muss der Benutzer das Tier mit der angegebenen ID und dem Index finden. Als Ausgabe war das gefundene Tier Vogel mit dem Index 2, was der vom Benutzer angegebenen ID (3) entspricht.

Ausgang:

JavaScript Objekt in Array nach Eigenschaftswert suchen – Ausgabe 2

Objekt im Array nach Eigenschaftswert finden mit der filter()-Methode

Wir können auch die Methode filter() verwenden, um ein neues Array zu erstellen, das mit Elementen gefüllt ist, die die Testfunktion durchlaufen. Die Methode filter() führt die Funktion nicht aus, wenn die Elemente null sind, und nimmt keine Änderungen am ursprünglichen Array vor.

Die folgenden Codes zeigen, wie ein Objekt anhand der ID in einem Array von JavaScript-Objekten gefunden wird.

var animals = [
  {animalName: 'Dog', ability: 'Bark'}, {animalName: 'Cat', ability: 'Meow'},
  {animalName: 'Bird', ability: 'Fly'}, {animalName: 'Fish', ability: 'Swim'}
];

var animalAbility = animals.filter(function(animal) {
  return animal.ability == 'Bark';
});

console.log(animalAbility);

Hier kann der Benutzer die erforderliche Ausgabe erhalten, indem er die entsprechende Fähigkeit eingibt, die benötigt wird, um aus dem Array zu gelangen.

Ausgang:

JavaScript Objekt in Array nach Eigenschaftswert suchen – Ausgabe 3

Suchen Sie ein Objekt in einem Array nach Eigenschaftswert mit der JavaScript-Schleife for

Deklarieren Sie zunächst ein Array von Objekten, jedes Objekt mit einer ID und Namenseigenschaften. Wenn es um die Ausführung des Programms geht, wird eine Funktion mit einem Array, einem Objektschlüssel und einem Wert erstellt.

Die for-Schleife wird verwendet, um die Objekte in einem Array zu durchlaufen. Jedes Objekt wird mit dem zugewiesenen Schlüssel und dem Wert mit dem Gleichheitsoperator (===) geprüft.

Bei Übereinstimmung gibt das Programm ein Objekt zurück. Andernfalls wird als Ausgabe null zurückgegeben.

Die folgenden Codes geben an, wie ein Objekt anhand des Schlüssels in einem Array von JavaScript-Objekten gefunden wird. Dieser Code verwendet keine Array-Methoden, um ein Array-Objekt zu finden.

let animals =
    [
      {'id': 1, 'animal': 'Dog'}, {'id': 2, 'animal': 'Cat'},
      {'id': 3, 'animal': 'Bird'}, {'id': 4, 'animal': 'Fish'}
    ]

    // declaration of the function and iteration through the objects
    function getObjectByKey(array, key, value) {
      for (var c = 0; c < array.length; c++) {
        if (array[c][key] === value) {
          return array[c];
        }
      }
      return null;
    } console.log(getObjectByKey(animals, 'animal', 'Fish'))

Der Benutzer kann die gewünschte Ausgabe erhalten, indem er den entsprechenden Schlüssel bereitstellt.

Ausgang:

JavaScript Objekt in Array nach Eigenschaftswert suchen – Ausgabe 4

Objekt im Array nach Eigenschaftswert mit JavaScript for...in-Schleife finden

Bei Bedarf kann die for...in-Schleife verwendet werden, um ein Array-Objekt anhand des Eigenschaftswerts zu finden, während sie alle Eigenschaftswerte eines Objekts durchläuft.

Der folgende Code zeigt, wie die for...in-Schleife verwendet werden kann, um ein Objekt zu finden.

var animals = [
  {'id': 1, 'animal': 'Dog'}, {'id': 2, 'animal': 'Cat'},
  {'id': 3, 'animal': 'Bird'}, {'id': 4, 'animal': 'Fish'}

];

for (const c in animals) {
  if (animals[c].id == 2) {
    console.log(animals[c]);
  }
}

Hier kann der Benutzer die Ausgabe abrufen, indem er bei Bedarf die entsprechende ID bereitstellt.

Ausgang:

JavaScript Objekt in Array nach Eigenschaftswert suchen – Ausgabe 5

Bei weiteren Implementierungen existieren andere Methoden, um ein JavaScript-Objekt aus einem Array von Objekten nach dem Wert der Eigenschaft zu erhalten.

Migel Hewage Nimesha avatar Migel Hewage Nimesha avatar

Nimesha is a Full-stack Software Engineer for more than five years, he loves technology, as technology has the power to solve our many problems within just a minute. He have been contributing to various projects over the last 5+ years and working with almost all the so-called 03 tiers(DB, M-Tier, and Client). Recently, he has started working with DevOps technologies such as Azure administration, Kubernetes, Terraform automation, and Bash scripting as well.

Verwandter Artikel - JavaScript Object