MDN wants to learn about developers like you: https://qsurvey.mozilla.com/s3/MDN-dev-survey

De indexOf() methode geeft de positie van het eerste voorval van searchValue binnen het String object waarop het wordt aangeroepen, waarbij begonnen wordt met zoeken vanaf fromIndex. Geeft -1 terug als geen voorvallen van searchValue gevonden worden.

Syntaxis

str.indexOf(searchValue[, fromIndex])

Parameters

searchValue
De string om naar te zoeken.
fromIndex Optional
De index vanaf waar gezocht moet worden binnen de string. Dit kan elke integer zijn. De standaard waarde is 0, waardoor de hele string wordt doorzocht. Als fromIndex < 0 is wordt de hele string doorzocht. Als fromIndex >= str.length is wordt de string niet doorzocht en wordt -1 teruggegeven. (behalve als searchValue een lege string is, dan wordt str.length teruggegeven)

Return waarde

De index waarop de gespecificeerde waarde het eerst voorkomt in de string; -1 als die niet gevonden wordt.

Beschrijving

Karakters in een string zijn geïndexeerd van links naar rechts. De index van het eerste karakter is 0 en de index van het laatste karakter van een string genaamd stringName is stringName.length - 1.

'Blue Whale'.indexOf('Blue');     // geeft 0 terug
'Blue Whale'.indexOf('Blute');    // geeft -1 terug
'Blue Whale'.indexOf('Whale', 0); // geeft 5 terug
'Blue Whale'.indexOf('Whale', 5); // geeft 5 terug
'Blue Whale'.indexOf('', 9);      // geeft 9 terug
'Blue Whale'.indexOf('', 10);     // geeft 10 terug
'Blue Whale'.indexOf('', 11);     // geeft 11 terug

Hoofdlettergevoeligheid

De indexOf() methode is hoofdlettergevoelig. Het volgende voorbeeld geeft -1 terug:

'Blue Whale'.indexOf('blue'); // geeft -1 terug

Voorvallen controleren

Onthoudt dat '0' niet vertaalt naar true en '-1' niet vertaalt naar false. Hierdoor moet op de volgende manier gekeken worden of een string binnen een andere string zit:

'Blue Whale'.indexOf('Blue') !== -1; // true
'Blue Whale'.indexOf('Bloe') !== -1; // false

Examples

indexOf() en lastIndexOf() gebruiken

Het volgende voorbeeld gebruikt indexOf() en lastIndexOf() om waardes binnen de string  "Brave new world" te vinden.

var anyString = 'Brave new world';

console.log('De index van de eerste w vanaf het begin is ' + anyString.indexOf('w'));
// logs 8
console.log('De index van de eerste w vanaf het begin is ' + anyString.lastIndexOf('w'));
// logs 10

console.log('De index van "new" vanaf het begin is ' + anyString.indexOf('new'));
// logs 6
console.log('De index van "new" vanaf het eind is ' + anyString.lastIndexOf('new'));
// logs 6

indexOf() en hoofdlettergevoeligheid

Het volgende voorbeeld legt twee string variabelen vast. Deze variabelen bevatten dezelfde string, behalve dat de tweede string hoofdletters bevat. De eerste console.log() methode geeft 19 terug. Omdat de indexOf() methode hoofdlettergevoelig is, wordt de string "cheddar" niet gevonden in myCapString, dus de tweede console.log() methode geeft -1 terug.

var myString    = 'brie, pepper jack, cheddar';
var myCapString = 'Brie, Pepper Jack, Cheddar';

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

indexOf() gebruiken om voorvallen van een letter in een string te tellen

In het volgende voorbeeld wordt in count de hoeveelheid voorvallen van e in de string str bijgehouden:

var str = 'To be, or not to be, that is the question.';
var count = 0;
var pos = str.indexOf('e');

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

console.log(count); // geeft 4

Specificaties

Specificatie Status Opmerking
ECMAScript 1st Edition (ECMA-262) Standard Eerste definitie.
ECMAScript 5.1 (ECMA-262)
The definition of 'String.prototype.indexOf' in that specification.
Standard  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'String.prototype.indexOf' in that specification.
Standard  
ECMAScript Latest Draft (ECMA-262)
The definition of 'String.prototype.indexOf' in that specification.
Draft  

Browser compatibiliteit

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) (Yes) (Yes) (Yes) (Yes)
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

Zie ook

Documentlabels en -medewerkers

 Aan deze pagina hebben bijgedragen: ArisChuck, SamuelNorbury, leroydev
 Laatst bijgewerkt door: ArisChuck,