Le but de l'index est de trouver l'emplacement d'un mot dans une chaîne
LastIndexof est également une recherche de mots. La différence entre eux est que le premier commence à partir de l'en-tête de chaîne, et le second commence à partir de la fin de la chaîne.
Une fois le mot spécifié trouvé, le numéro de position actuel du mot sera renvoyé. Si cela n'est pas trouvé, retournez -1.
var str = "//www.stoooges.com.my/test/index.aspx123/" //0Console.log(str.LasTindexof("/ ")); // 39Le paramètre 1 est le mot à rechercher, il doit être STR, il ne fonctionnera pas.
De plus, il accepte également le deuxième paramètre. Type de numéro, cela nous permet de spécifier la plage de recherches.
var str = "//www.stoooges.com.my/test/index.aspx123/" // 0 La valeur par défaut est 0Console.log (str.lastIndexof ("/", str.length)); // 39 La valeur par défaut est str.lengthLe contrôle des deux méthodes est dans des directions différentes.
En supposant que l'index est défini sur 10, alors la plage de recherche est de 10 à Str.Length (fin du mot)
Si LastIndexof est défini sur 10, la plage de recherche sera de 10 à 0 (premier mot)
Faites attention à cela.
PS: le régler sur un nombre négatif tel que -500 provoquera un phénomène étrange, je ne comprends pas = = ";
Parfois, nous voulons spécifier le nième. Ensuite, nous pouvons l'atteindre par la méthode ci-dessus.
Par exemple:
String.prototype.myIndexof = fonction (searchvalue, startIndex) {var text = this; startIndex = startIndex || 1; var is_negative = startIndex <0; var iPos = (is_negative)? text.length + 1: 0 - 1; var looptime = math.abs (startIndex); for (var i = 0; i <looptime; i ++) {ipos = (is_negative)? text.LastIndexof (SearchValue, iPOS - 1): text.indexof (SearchValue, iPOS + 1); if (ipos == -1) Break;} return iPOS;} var str = "//www.stoooges.com.my/test/index.aspx123/" //20console.log(str.myindexof("/ ", -2)); // 25 la deuxième dernière position