--- title: String.prototype.indexOf() slug: Web/JavaScript/Reference/Global_Objects/String/indexOf tags: - JavaScript - Method - Prototype - Reference - String translation_of: Web/JavaScript/Reference/Global_Objects/String/indexOf ---
{{JSRef}}

De indexOf() methode geeft de positie van het eerste voorval van searchValue binnen het {{jsxref("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_inline}}
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 {{jsxref("String.prototype.lastIndexOf()", "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 {{domxref("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
{{SpecName('ES1')}} {{Spec2('ES1')}} Eerste definitie.
{{SpecName('ES5.1', '#sec-15.5.4.7', 'String.prototype.indexOf')}} {{Spec2('ES5.1')}}  
{{SpecName('ES6', '#sec-string.prototype.indexof', 'String.prototype.indexOf')}} {{Spec2('ES6')}}  
{{SpecName('ESDraft', '#sec-string.prototype.indexof', 'String.prototype.indexOf')}} {{Spec2('ESDraft')}}  

Browser compatibiliteit

{{CompatibilityTable}}
Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}}
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}}

Zie ook