Heim  >  Artikel  >  Web-Frontend  >  js-Methode, um zu bestimmen, ob eine Zeichenfolge eine substring_javascript-Fähigkeit enthält

js-Methode, um zu bestimmen, ob eine Zeichenfolge eine substring_javascript-Fähigkeit enthält

WBOY
WBOYOriginal
2016-05-16 16:17:551253Durchsuche

Das Beispiel in diesem Artikel beschreibt, wie js ermittelt, ob eine Zeichenfolge eine Teilzeichenfolge enthält. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

In unserer täglichen Front-End-Entwicklung stoßen wir häufig auf das Problem, festzustellen, ob ein String einen bestimmten Teilstring enthält. Hier werden wir einige Methoden untersuchen, um diese Anforderung zu lösen und sie richtig zu verwenden. Im Idealfall suchen wir nach einer Methode, die unserem Zweck entspricht (wenn x y enthält) und „true“ oder „false“ zurückgibt.

1. String.prototype.indexOf und String.prototype.lastIndexOf

Diese beiden Methoden sind für uns möglicherweise die einfachsten. Wenn sie einen Teilstring enthält, wird ein Index größer oder gleich 0 zurückgegeben, andernfalls wird -1 zurückgegeben, was unserer idealen Situation nicht entspricht.

Code kopieren Der Code lautet wie folgt:
var str = "Mein Blogname ist Benjamin-Focus on front-end Entwicklung und Benutzererfahrung",
​ substr = "Benjamin";

Funktion isContains(str, substr) {
Rückgabe str.indexOf(substr) >= 0;
}

//true
console.log(isContains(str, substr));

2. String.prototype.search

Wir haben an die Methode String.prototype.search gedacht. Da der Parameter der Suchmethode ein regulärer Ausdruck ist, ist er derselbe wie indexOf.

Code kopieren Der Code lautet wie folgt:
var str = "Mein Blogname ist Benjamin-Focus on front-end Entwicklung und Benutzererfahrung",
​ substr = "Benjamin";

Funktion isContains(str, substr) {
Gibt neues RegExp(substr).test(str);
zurück }

//true
console.log(isContains(str, substr));

Diese Methode sieht besser aus als die indexOf-Methode. Diese Methode gibt direkt true oder false zurück. Gleichzeitig ist der Methodennamentest semantischer als indexOf.

3. String.prototype.contains

Code kopieren Der Code lautet wie folgt:
var str = "Mein Blogname ist Benjamin-Focus on Front-End-Entwicklung und Benutzererfahrung“,
​ substr = "Benjamin";

Funktion isContains(str, substr) {
Rückgabe str.contains(substr);
}

//true
console.log(isContains(str, substr));

Diese Methode wird derzeit nur von Firefox unterstützt und befindet sich noch im ECMAScript 6-Entwurf. Diese Methode erfüllt die oben genannte Idealsituation. Bitte klicken Sie hier für Details. Wenn Sie die Methode „enthält“ verwenden möchten, können Sie auf die Drittanbieterbibliothek string.js verweisen. Klicken Sie hier, um string.js von dieser Website herunterzuladen. Quellcode-Implementierung:
Code kopieren Der Code lautet wie folgt:
enthält: Funktion(ss) {
Gibt this.s.indexOf(ss) >= 0;
zurück },
Weitere Methoden sollen hinzugefügt werden. . .
Im Hinblick auf Leistungsprobleme muss natürlich noch getestet werden, welche Methode schneller ist. Interessierte Freunde möchten es vielleicht selbst testen.

Ich hoffe, dass dieser Artikel für das JavaScript-Programmierdesign aller hilfreich sein wird.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn