Array.prototype.includes()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since August 2016.
Die includes()
-Methode von Array
-Instanzen bestimmt, ob ein Array einen bestimmten Wert unter seinen Einträgen enthält und gibt entsprechend true
oder false
zurück.
Probieren Sie es aus
const array1 = [1, 2, 3];
console.log(array1.includes(2));
// Expected output: true
const pets = ["cat", "dog", "bat"];
console.log(pets.includes("cat"));
// Expected output: true
console.log(pets.includes("at"));
// Expected output: false
Syntax
includes(searchElement)
includes(searchElement, fromIndex)
Parameter
searchElement
-
Der zu suchende Wert.
fromIndex
Optional-
Nullbasierter Index, ab dem mit der Suche begonnen wird, in einen Integer umgewandelt.
- Ein negativer Index zählt vom Ende des Arrays rückwärts — wenn
-array.length <= fromIndex < 0
, wirdfromIndex + array.length
verwendet. Das Array wird jedoch immer noch von vorne nach hinten durchsucht. - Ist
fromIndex < -array.length
oder wirdfromIndex
weggelassen, wird0
verwendet, sodass das gesamte Array durchsucht wird. - Ist
fromIndex >= array.length
, wird das Array nicht durchsucht und es wirdfalse
zurückgegeben.
- Ein negativer Index zählt vom Ende des Arrays rückwärts — wenn
Rückgabewert
Ein boolescher Wert, der true
ist, wenn der Wert searchElement
im Array gefunden wird (oder in dem durch den Index fromIndex
angegebenen Teil des Arrays, falls angegeben).
Beschreibung
Die includes()
-Methode vergleicht searchElement
mit den Elementen des Arrays unter Verwendung des SameValueZero-Algorithmus. Werte von Null werden unabhängig von ihrem Vorzeichen als gleich betrachtet (d.h. -0
ist gleich 0
), aber false
wird nicht als gleich 0
angesehen. NaN
kann korrekt gesucht werden.
Wenn sie auf dünn besetzten Arrays angewendet wird, iteriert die includes()
-Methode leere Slots, als ob sie den Wert undefined
hätten.
Die includes()
-Methode ist generisch. Sie erwartet nur, dass der this
-Wert eine length
-Eigenschaft und Integer-indizierte Eigenschaften hat.
Beispiele
Verwendung von includes()
[1, 2, 3].includes(2); // true
[1, 2, 3].includes(4); // false
[1, 2, 3].includes(3, 3); // false
[1, 2, 3].includes(3, -1); // true
[1, 2, NaN].includes(NaN); // true
["1", "2", "3"].includes(3); // false
fromIndex ist größer oder gleich der Array-Länge
Wenn fromIndex
größer oder gleich der Länge des Arrays ist, wird false
zurückgegeben. Das Array wird nicht durchsucht.
const arr = ["a", "b", "c"];
arr.includes("c", 3); // false
arr.includes("c", 100); // false
Berechneter Index ist kleiner als 0
Wenn fromIndex
negativ ist, wird der berechnete Index verwendet, um die Position im Array zu ermitteln, an der die Suche nach searchElement
beginnt. Ist der berechnete Index kleiner oder gleich 0
, wird das gesamte Array durchsucht.
// array length is 3
// fromIndex is -100
// computed index is 3 + (-100) = -97
const arr = ["a", "b", "c"];
arr.includes("a", -100); // true
arr.includes("b", -100); // true
arr.includes("c", -100); // true
arr.includes("a", -2); // false
Nutzung von includes() auf dünn besetzten Arrays
Sie können undefined
in einem dünn besetzten Array suchen und true
zurückbekommen.
console.log([1, , 3].includes(undefined)); // true
Aufruf von includes() auf Nicht-Array-Objekten
Die includes()
-Methode liest die length
-Eigenschaft von this
und greift dann auf jede Eigenschaft zu, deren Schlüssel eine nicht-negative ganze Zahl ist, die kleiner als length
ist.
const arrayLike = {
length: 3,
0: 2,
1: 3,
2: 4,
3: 1, // ignored by includes() since length is 3
};
console.log(Array.prototype.includes.call(arrayLike, 2));
// true
console.log(Array.prototype.includes.call(arrayLike, 1));
// false
Spezifikationen
Specification |
---|
ECMAScript® 2026 Language Specification # sec-array.prototype.includes |