Heim > Artikel > Web-Frontend > Das JavaScript-Array bestimmt, ob es enthält
In JavaScript ist ein Array eine sehr verbreitete Datenstruktur, die mehrere Werte speichern und mit verschiedenen Array-Methoden manipuliert werden kann. In der tatsächlichen Entwicklung müssen wir häufig herausfinden, ob ein Array einen bestimmten Wert enthält. In diesem Artikel wird erläutert, wie Sie in JavaScript feststellen können, ob ein Array einen bestimmten Wert enthält.
Methode 1: Verwenden Sie die Funktion indexOf()
Die Funktion indexOf() ist eine integrierte Funktion, die von JavaScript-Arrays bereitgestellt wird und zur Suche nach der Position eines bestimmten Werts im Array verwendet werden kann. Wenn der Wert gefunden wird, gibt die Funktion die Indexposition des Werts im Array zurück. Befindet sich der Wert nicht im Array, wird -1 zurückgegeben.
Daher können wir die Funktion indexOf() verwenden, um festzustellen, ob das Array einen bestimmten Wert enthält. Die spezifische Implementierung lautet wie folgt:
let arr = [1, 2, 3, 4, 5]; let target = 3; if (arr.indexOf(target) !== -1) { console.log("数组包含" + target); } else { console.log("数组不包含" + target); }
Wenn im obigen Code das Array arr ein Element mit dem Wert 3 enthält, wird „Array enthält 3“ ausgegeben, andernfalls wird „Array enthält nicht 3“ ausgegeben.
Es ist zu beachten, dass der von der Funktion indexOf() zurückgegebene Indexwert bei 0 beginnt. Wenn Sie daher bei Verwendung der Funktion indexOf() feststellen müssen, ob sie ein Element enthält, müssen Sie feststellen, ob es gleich -1 ist. Darüber hinaus müssen Sie bei der Verwendung dieser Funktion auf die Übereinstimmung der Datentypen achten. Wenn Sie nach einer Zeichenfolge suchen möchten, müssen Sie den strikten Gleichheitsoperator (===) verwenden, wie im folgenden Code gezeigt:
let arr = ["apple", "banana", "orange"]; let target = "banana"; if (arr.indexOf(target) !== -1) { console.log("数组包含" + target); } else { console.log("数组不包含" + target); }
Im obigen Code werden wir den Inhalt in eine Zeichenfolge ändern und das Suchziel ist ebenfalls eine Zeichenfolge. Wenn Sie bei der Beurteilung den Operator „==" verwenden, erhalten Sie falsche Ergebnisse.
Methode 2: Verwenden Sie die Funktion Includes()
Die Funktion Includes() ist eine weitere integrierte Funktion, die von JavaScript-Arrays bereitgestellt wird. Sie kann verwendet werden, um zu bestimmen, ob ein Array ein bestimmtes Element enthält. Der Rückgabewert der Funktion include() ist ein boolescher Wert. Wenn das Element im Array enthalten ist, gibt es true zurück, andernfalls gibt es false zurück.
Wir können die Funktion Includes() verwenden, um festzustellen, ob das Array einen bestimmten Wert enthält. Die spezifische Implementierung lautet wie folgt:
let arr = [1, 2, 3, 4, 5]; let target = 3; if (arr.includes(target)) { console.log("数组包含" + target); } else { console.log("数组不包含" + target); }
Wenn im obigen Code das Array arr ein Element mit dem Wert 3 enthält, wird „Array enthält 3“ ausgegeben, andernfalls wird „Array enthält nicht 3“ ausgegeben.
Es ist zu beachten, dass der Rückgabewert der Funktion include() wahr oder falsch ist und nicht den Indexwert des Elements im Array zurückgibt. Darüber hinaus müssen Sie bei der Verwendung dieser Funktion auf die Übereinstimmung der Datentypen achten. Wenn Sie nach einer Zeichenfolge suchen möchten, müssen Sie den strikten Gleichheitsoperator (===) verwenden, wie im folgenden Code gezeigt:
let arr = ["apple", "banana", "orange"]; let target = "banana"; if (arr.includes(target)) { console.log("数组包含" + target); } else { console.log("数组不包含" + target); }
Methode 3: Verwenden Sie die find()-Funktion von ES6
In ES6 stellen JavaScript-Arrays eine neue Funktion find() bereit, mit der Sie Elemente im Array finden können, die eine bestimmte Bedingung erfüllen. Der Parameter der Funktion find() ist eine Rückruffunktion, die drei Parameter akzeptieren kann: Elementwert, Elementindex und das Array selbst. Die Rückruffunktion muss einen booleschen Wert zurückgeben. Wenn dieser wahr ist, bedeutet dies, dass ein Element gefunden wurde, das die Bedingung erfüllt, und die Funktion find() gibt das Element zurück. Wenn die Rückruffunktion „false“ zurückgibt, setzen Sie die Suche fort.
Wir können die Funktion find() verwenden, um festzustellen, ob das Array einen bestimmten Wert enthält. Die spezifische Implementierung lautet wie folgt:
let arr = [1, 2, 3, 4, 5]; let target = 3; if (arr.find(item => item === target)) { console.log("数组包含" + target); } else { console.log("数组不包含" + target); }
Im obigen Code verwenden wir die Pfeilfunktion, um die Rückruffunktion zu implementieren. Der Parameter der Pfeilfunktion ist item, und das Codeelement === target gibt an, ob das Zielelement gefunden wird. Wenn das Array arr ein Element mit dem Wert 3 enthält, wird „Array enthält 3“ ausgegeben, andernfalls wird „Array enthält keine 3“ ausgegeben.
Es ist zu beachten, dass die Funktion find() das gefundene Element zurückgibt, wenn es nicht gefunden wird. Darüber hinaus müssen Sie bei Verwendung dieser Funktion auf die Syntax der Rückruffunktion achten. Wenn die Rückruffunktion nicht oder false zurückgibt, wird das erste undefinierte Element gefunden, was zu falschen Ergebnissen führen kann.
Zusammenfassung
Oben werden drei Methoden vorgestellt, um zu bestimmen, ob ein JavaScript-Array einen bestimmten Wert enthält: die Funktion indexOf(), die Funktion include() und die Funktion find() von ES6. Jede dieser drei Methoden hat ihre eigenen Vor- und Nachteile, und Sie müssen entsprechend der tatsächlichen Situation die geeignete Methode auswählen. Darüber hinaus müssen Sie bei der Verwendung auf die Übereinstimmung der Datentypen und die Syntax der Rückruffunktion achten.
Das obige ist der detaillierte Inhalt vonDas JavaScript-Array bestimmt, ob es enthält. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!