[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/String/indexOf [Back]  [Original]

String.prototype.indexOf() - JavaScript | MDN

Dieser Inhalt wurde automatisch aus dem Englischen bersetzt, und kann Fehler enthalten. Erfahre mehr ber dieses Experiment.

View in English Always switch to English

String.prototype.indexOf()

Baseline Weitgehend verfgbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Gerten und in vielen Browserversionen. Sie ist seit Juli 2015 browserbergreifend verfgbar.

Die indexOf() Methode von String Werten durchsucht diese Zeichenfolge und gibt den Index des ersten Vorkommens des angegebenen Substrings zurck. Sie nimmt eine optionale Startposition entgegen und liefert das erste Vorkommen des angegebenen Substrings an einem Index, der grer oder gleich der angegebenen Zahl ist.

In diesem Artikel

Probieren Sie es aus

const paragraph = "I think Ruth's dog is cuter than your dog!";

const searchTerm = "dog";
const indexOfFirst = paragraph.indexOf(searchTerm);

console.log(`The index of the first "${searchTerm}" is ${indexOfFirst}`);
// Expected output: "The index of the first "dog" is 15"

console.log(
  `The index of the second "${searchTerm}" is ${paragraph.indexOf(
    searchTerm,
    indexOfFirst + 1,
  )}`,
);
// Expected output: "The index of the second "dog" is 38"

Syntax

js
indexOf(searchString)
indexOf(searchString, position)

Parameter

searchString

Substring, der gesucht werden soll. Alle Werte werden in Zeichenfolgen umgewandelt, daher fhrt das Weglassen oder bergeben von undefined dazu, dass indexOf() nach der Zeichenfolge "undefined" sucht, was selten gewnscht ist.

position Optional

Die Methode gibt den Index des ersten Vorkommens des angegebenen Substrings an einer Position zurck, die grer oder gleich position ist, welche standardmig 0 ist. Wenn position grer als die Lnge der aufrufenden Zeichenfolge ist, durchsucht die Methode die aufrufende Zeichenfolge berhaupt nicht. Wenn position kleiner als null ist, verhlt sich die Methode so, als wre position 0.

  • 'hello world hello'.indexOf('o', -5) gibt 4 zurck da dies dazu fhrt, dass sich die Methode so verhlt, als wre das zweite Argument 0, und das erste Vorkommen von o an einer Position grer oder gleich 0 an Position 4 ist.

  • 'hello world hello'.indexOf('world', 12) gibt -1 zurck weil, obwohl es stimmt, dass der Substring world bei Index 6 vorkommt, diese Position nicht grer oder gleich 12 ist.

  • 'hello world hello'.indexOf('o', 99) gibt -1 zurck weil 99 grer als die Lnge von hello world hello ist, was dazu fhrt, dass die Methode die Zeichenfolge berhaupt nicht durchsucht.

Rckgabewert

Der Index des ersten gefundenen Vorkommens von searchString, oder -1, wenn nicht gefunden.

Rckgabewert bei Verwendung eines leeren Suchstrings

Die Suche nach einem leeren Suchstring fhrt zu seltsamen Ergebnissen. Ohne zweites Argument oder mit einem zweiten Argument, dessen Wert kleiner als die Lnge der aufrufenden Zeichenfolge ist, entspricht der Rckgabewert dem Wert des zweiten Arguments:

js
"hello world".indexOf(""); // returns 0
"hello world".indexOf("", 0); // returns 0
"hello world".indexOf("", 3); // returns 3
"hello world".indexOf("", 8); // returns 8

Wenn jedoch das zweite Argument einen Wert hat, der grer oder gleich der Lnge der Zeichenfolge ist, entspricht der Rckgabewert der Lnge der Zeichenfolge:

js
"hello world".indexOf("", 11); // returns 11
"hello world".indexOf("", 13); // returns 11
"hello world".indexOf("", 22); // returns 11

Im ersten Fall verhlt sich die Methode, als htte sie einen leeren String direkt nach der im zweiten Argument angegebenen Position gefunden. Im zweiten Fall verhlt sich die Methode, als htte sie einen leeren String am Ende der aufrufenden Zeichenfolge gefunden.

Beschreibung

Zeichenfolgen sind nullbasiert: Der Index des ersten Zeichens einer Zeichenfolge ist 0, und der Index des letzten Zeichens einer Zeichenfolge ist die Lnge der Zeichenfolge minus 1.

js
"Blue Whale".indexOf("Blue"); // returns  0
"Blue Whale".indexOf("Wale"); // returns -1
"Blue Whale".indexOf("Whale", 0); // returns  5
"Blue Whale".indexOf("Whale", 5); // returns  5
"Blue Whale".indexOf("Whale", 7); // returns -1
"Blue Whale".indexOf(""); // returns  0
"Blue Whale".indexOf("", 9); // returns  9
"Blue Whale".indexOf("", 10); // returns 10
"Blue Whale".indexOf("", 11); // returns 10

Die indexOf() Methode ist case-sensitive. Zum Beispiel gibt der folgende Ausdruck -1 zurck:

js
"Blue Whale".indexOf("blue"); // returns -1

berprfen von Vorkommen

Um zu berprfen, ob ein bestimmter Substring in einer Zeichenfolge vorkommt, sollte man richtig prfen, ob der Rckgabewert -1 ist:

js
"Blue Whale".indexOf("Blue") !== -1; // true; found 'Blue' in 'Blue Whale'
"Blue Whale".indexOf("Wale") !== -1; // false; no 'Wale' in 'Blue Whale'

Beispiele

Verwendung von indexOf()

Das folgende Beispiel verwendet indexOf(), um Substrings in der Zeichenfolge "Brave new world" zu lokalisieren.

js
const str = "Brave new world";

console.log(str.indexOf("w")); // 8
console.log(str.indexOf("new")); // 6

indexOf() und Gro-/Kleinschreibung

Das folgende Beispiel definiert zwei String-Variablen.

Die Variablen enthalten denselben String, auer dass die zweite Zeichenfolge Grobuchstaben enthlt. Die erste console.log() Methode zeigt 19 an. Aber da die indexOf() Methode case-sensitive ist, wird der String "cheddar" in myCapString nicht gefunden, sodass die zweite console.log() Methode -1 anzeigt.

js
const myString = "brie, pepper jack, cheddar";
const myCapString = "Brie, Pepper Jack, Cheddar";

console.log(myString.indexOf("cheddar")); // 19
console.log(myCapString.indexOf("cheddar")); // -1

Verwendung von indexOf() zur Zhlung von Vorkommen eines Buchstabens in einer Zeichenfolge

Das folgende Beispiel setzt count auf die Anzahl der Vorkommen des Buchstabens e in der Zeichenfolge str:

js
const str = "To be, or not to be, that is the question.";
let count = 0;
let position = str.indexOf("e");

while (position !== -1) {
  count++;
  position = str.indexOf("e", position + 1);
}

console.log(count); // 4

Spezifikationen

Spezifikation
ECMAScript 2027 LanguageSpecification
# sec-string.prototype.indexof

Browser-Kompatibilitt

Siehe auch


Web Proxy Viewer  |  New URL  |  Original Page