Je ne comprends vraiment pas comment fonctionne lastIndexOf. Je n'ai pas pu obtenir l'utilisation du second paramètre optionnel.lastIndexOf Confusion
string.lastIndexOf (searchValue, commencer)
searchValue -> Obligatoire. La chaîne à rechercher
démarrer -> Facultatif. La position où commencer la recherche. En cas d'omission, la valeur par défaut est la longueur de la chaîne
var test = "mississippi";
test.lastIndexOf("ss",1) // return -1
test.lastIndexOf("ss",2) // returns 2
test.lastIndexOf("ss",5) // returns 5
Quelqu'un pourrait-il me dire l'étape d'idée par étape? Pourquoi le premier renvoie -1 et le second renvoie 2 par exemple?
TIA
Pour élaborer, c'est le point de départ de la recherche, et la recherche est effectuée à rebours. Si l'argument est '1', seuls les deux premiers caractères de la chaîne sont recherchés. Si c'est «5», tous les caractères jusqu'au sixième (inclus et à partir de 1) sont recherchés. –
ok. Ensuite, je cherche 'ss' et je lui donne 5 comme deuxième paramètre. Pourquoi cela me donne 5 à la suite. Parce que le second est le sixième caractère. Ne devrait-il pas chercher jusqu'à 5 –
@Ryu, non, le second 's' a * index * 6. C'est le septième caractère de la chaîne, en supposant que vous comptez à partir de 1. La fonction renvoie' 5' car elle commence à chercher à l'index '5' (le premier' s') et voit 'ss' de cette position (le reste de la chaîne compte). –