Dit artikel heeft een redactionele beoordeling nodig. Hoe u kunt helpen.
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. AlsfromIndex < 0
is wordt de hele string doorzocht. AlsfromIndex >= str.length
is wordt de string niet doorzocht en wordt -1 teruggegeven. (behalve alssearchValue
een lege string is, dan wordtstr.length
teruggegeven)
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 eind 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
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) |