Objekt im Array nach Eigenschaftswert in JavaScript suchen
-
Objekt im Array nach Eigenschaftswert finden mit der
find()
-Methode -
Objekt im Array nach Eigenschaftswert finden mit der
filter()
-Methode -
Suchen Sie ein Objekt in einem Array nach Eigenschaftswert mit der JavaScript-Schleife
for
-
Objekt im Array nach Eigenschaftswert mit JavaScript
for...in
-Schleife finden
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:
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:
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:
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:
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:
Bei weiteren Implementierungen existieren andere Methoden, um ein JavaScript-Objekt aus einem Array von Objekten nach dem Wert der Eigenschaft zu erhalten.
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.