I really dont understand how lastIndexOf works. I could not get the usage of second optional parameter.
string.lastIndexOf(searchvalue,start)
searchvalue -> Required. The string to search for
start -> Optional. The position where to start the search. If omitted, the default value is the length of the string
var test = "mississippi";
test.lastIndexOf("ss",1) // return -1
test.lastIndexOf("ss",2) // returns 2
test.lastIndexOf("ss",5) // returns 5
Could anyone tell me the idea step by step ? Why first one returns -1 and second one returns 2 for example ?
TIA
Its because thats the starting index. -1
means not found.
m 0
i 1
s 2
s 3
i 4
s 5
s 6
i 7
p 8
p 9
i 10
So starting at 1 and I dont see a match. But with 2, I see s
then s
at 3.
MDN explains it well.
The lastIndexOf() method gets the last index of a search string in the main string. It takes one parameters as input a search string.
It returns the the last position (index) of the search string. If the search string can not be found it will return "-1". Visit http://skillcram.com/JS.htm for example
来源:https://stackoverflow.com/questions/12430291/lastindexof-confusion