Maison > interface Web > js tutoriel > Exemples d'utilisation de indexOf et lastIndexOf introduction_javascript skills

Exemples d'utilisation de indexOf et lastIndexOf introduction_javascript skills

WBOY
Libérer: 2016-05-16 16:37:57
original
1766 Les gens l'ont consulté

Le but de indexOf est de trouver la position d'un mot dans une chaîne

lastIndexOf est également une recherche de mots. La différence entre eux est que le premier commence au début de la chaîne et le second à la fin de la chaîne.

Une fois le mot spécifié trouvé, le numéro de position actuel du mot sera renvoyé. S'il n'est pas trouvé, renvoyez -1.

var str = "//www.stooges.com.my/test/index.aspx123/";
console.log(str.indexOf("/")); //0
console.log(str.lastIndexOf("/")); //39

Copier après la connexion

Le paramètre 1 est le mot à rechercher, il doit être str, l'expression régulière ne fonctionnera pas.

Il accepte également le 2ème paramètre. Type de numéro, cela nous permet de préciser la plage de recherche.

var str = "//www.stooges.com.my/test/index.aspx123/";
console.log(str.indexOf("/", 0)); //0 默认情况是 0
console.log(str.lastIndexOf("/", str.length)); //39 默认情况是 str.length
Copier après la connexion

Le contrôle des deux méthodes va dans des directions différentes.

Supposons que indexOf est défini sur 10, alors la plage de recherche est de 10 à str.length (fin du caractère)

Si lastIndexOf est défini sur 10, la plage de recherche sera de 10 à 0 (préfixe)

Vous devriez faire attention à cela.

ps : S'il est réglé sur un nombre négatif tel que -500, il y aura des phénomènes étranges que je ne peux pas comprendre moi-même = = " ;

Parfois, nous voulons spécifier le nième. Ensuite, nous pouvons y parvenir grâce à la méthode ci-dessus.

Par exemple :

String.prototype.myIndexOf = function (searchValue, startIndex) { 
var text = this;
startIndex = startIndex || 1; 
var is_negative = startIndex < 0;
var ipos = (is_negative) &#63; text.length + 1 : 0 - 1; 
var loopTime = Math.abs(startIndex);
for (var i = 0; i < loopTime ; i++) {
ipos = (is_negative) &#63; text.lastIndexOf(searchValue, ipos - 1) : text.indexOf(searchValue, ipos + 1);
if (ipos == -1) break;
}
return ipos;
}
Copier après la connexion
var str = "//www.stooges.com.my/test/index.aspx123/";
console.log(str.myIndexOf("/", 3)); //20
console.log(str.myIndexOf("/", -2)); //25 倒数第2个的位置
Copier après la connexion
Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal