--- 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 ---
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.
str.indexOf(searchValue[, fromIndex])
searchValuefromIndex {{optional_inline}}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)De index waarop de gespecificeerde waarde het eerst voorkomt in de string; -1 als die niet gevonden wordt.
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
De indexOf() methode is hoofdlettergevoelig. Het volgende voorbeeld geeft -1 terug:
'Blue Whale'.indexOf('blue'); // geeft -1 terug
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
indexOf() en lastIndexOf() gebruikenHet 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 hoofdlettergevoeligheidHet 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 tellenIn 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
| 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')}} |
| 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}} |