Maison  >  Article  >  interface Web  >  Explication détaillée de la différence entre indexOf et search en JavaScript

Explication détaillée de la différence entre indexOf et search en JavaScript

黄舟
黄舟original
2017-12-04 14:17:062801parcourir

Dans notre article précédent, nous vous avons présenté l'explication détaillée de l'utilisation de indexof. Je pense que tout le monde connaît cela. Indexof détermine si la chaîne It. est particulièrement couramment utilisé pour inclure des sous-chaînes et constitue un outil utile pour les étudiants qui ne sont pas familiers avec les expressions régulières. Aujourd'hui, nous allons continuer à vous présenter l'explication détaillée de la différence entre indexOf et search en JavaScript !

La méthode IndexOf() est utilisée pour déterminer si une chaîne existe dans une chaîne plus longue. Recherchez de l’extrémité gauche à l’extrémité droite de la longue chaîne et si la sous-chaîne existe, renvoyez sa position (c’est-à-dire l’index). Si la chaîne recherchée n'est pas trouvée, -1 est renvoyé. Notez que la valeur de l'index doit être renseignée à l'emplacement ici. Tous les index de chaîne commencent à zéro, la position du premier caractère est 0 et la position de fin est la longueur de la chaîne moins 1.

Cette méthode est équivalente à la fonction strstr du langage C et à la fonction inStr du langage Visual Basic. Cette méthode a également une fonction correspondante, lastIndexOf(), qui recherche à partir de l'extrémité droite d'une longue chaîne.

Ensuite, le problème survient, la méthode search() renvoie également la valeur de l'index cible de l'auto-chaîne. Quelle est la différence entre indexOf() et search() ? Pourquoi devriez-vous l’utiliser et quand devriez-vous utiliser la méthode search() ?

Tout d'abord, il doit être clair que les paramètres de search() doivent être des expressions régulières, tandis que les paramètres de indexOf() ne sont que des chaînes ordinaires. indexOf() est une méthode de niveau inférieur à search().

Si vous recherchez simplement une chaîne spécifique, l'utilisation de indexOf() consomme moins de ressources système et est plus efficace si vous recherchez une chaîne avec certaines caractéristiques (par exemple, rechercher une chaîne qui commence ; avec a, suivi d'une chaîne de nombres), alors indexOf() ne peut rien faire et vous devez utiliser des expressions régulières et la méthode search().

Souvent, indexOf() est utilisé non pas parce que vous voulez vraiment connaître la position de la sous-chaîne, mais parce que vous voulez savoir que la sous-chaîne n'est pas incluse dans la longue chaîne. Si la valeur d'index renvoyée est -1, cela signifie qu'il n'y en a pas ; si elle n'est pas égale à -1, cela signifie qu'il y en a.

Donc, généralement, indexOf est plus économe en ressources que la recherche.

Résumé :

Je crois qu'en étudiant cet article, vous comprendrez mieux la différence entre indexOf et search, j'espère. cela sera utile pour votre travail.

Recommandations associées :

Explication détaillée de l'utilisation d'indexof en JavaScript


Comment utiliser indexOf() et la différence avec jQuery.inArray()


Explication détaillée de la méthode indexOf dans le tableau JavaScript

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
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