Hoe twee strings in JavaScript te vergelijken

Hoe Twee Strings In Javascript Te Vergelijken



[Er zijn situaties waarin de ontwikkelaars twee strings moeten vergelijken. De meeste programmeurs maken vaak de fout om te proberen hun strings in JavaScript te vergelijken met behulp van de == operator. De operator == heeft enkele beperkingen in deze situatie, aangezien de variabeletypes er niet mee kunnen worden gevalideerd. Het kan dus zijn dat u op zoek moet naar andere methoden om met de situatie om te gaan.

Dit artikel demonstreert de procedure voor het vergelijken van strings in JavaScript.







Hoe twee strings in JavaScript te vergelijken?

Gebruik de volgende vermelde methoden om twee JavaScript-tekenreeksen te vergelijken:



Laten we de werking van elke methode afzonderlijk bekijken.



Methode 1: Vergelijk twee strings met behulp van operator voor strikte gelijkheid

De operator voor strikte gelijkheid (===) kan worden gebruikt om te valideren of de strings gelijk zijn of niet. Als de tekenreeksen verschillend zijn, retourneert het false als uitvoer; anders geeft het waar. Omdat het een hoofdlettergevoelige methode is, vergelijkt het bij het vergelijken van tekenreeksen ook de hoofdletters, wat betekent dat kleine letters en hoofdletters als verschillend worden beschouwd.





Syntaxis

Gebruik de onderstaande syntaxis om twee tekenreeksen te vergelijken met behulp van de operator voor strikte gelijkheid:

str1 === str2 ;

Hier de ' === ” zal de waarde en het datatype van str1 en str2 vergelijken.



Voorbeeld

In dit voorbeeld zullen we de twee strings vergelijken, de ene is in hoofdletters en de andere in kleine letters. Om dit te doen, zullen we eerst twee variabelen maken met de naam 'str1' en 'str2' die strings opslaat ' LinuxHint ' en ' linuxhint ”:

was str1 = 'LinuxHint' ;
was str2 = 'linux' ;

Bel dan de “ console.log() ” methode voor het afdrukken van het resultaat dat aangeeft of de strings gelijk zijn of niet met behulp van de “ === ” operator:

troosten. log ( str1 === str2 ) ;

De uitvoer toont ' vals ” wat aangeeft dat de strings niet gelijk zijn omdat de gelijkheidsoperator hoofdlettergevoelige vergelijkingen uitvoert:

Als u een hoofdletterongevoelige vergelijking tussen tekenreeksen wilt uitvoeren, moet u de onderstaande methoden volgen.

Methode 2: Vergelijk twee strings met de methode localeCompare()

localeCompare() ” is een vooraf gedefinieerde JavaScript-methode die wordt gebruikt voor het vergelijken van twee strings. Het voert een hoofdletterongevoelige tekenreeksvergelijking uit en gebruikt de huidige landinstelling om twee tekenreeksen te vergelijken.

Syntaxis

Volg de onderstaande syntaxis voor het vergelijken van twee strings met behulp van de localeCompare()-methode:

str1. localeVergelijken ( str2 ) ;

Hier, ' str2 ” is de string die zal worden vergeleken met “ str1 ”:

Voorbeeld

We zullen nu dezelfde strings gebruiken die al in het vorige voorbeeld zijn gemaakt en ze vervolgens vergelijken met de ' localeCompare() ”-methode met behulp van de voorwaardelijke operator:

als ( str1. localeVergelijken ( str2 ) ) {
troosten. log ( 'str1 is gelijk aan str2' ) ;
} anders {
troosten. log ( 'str1 is niet gelijk aan str2' ) ;
}

Zoals u kunt zien, geeft de uitvoer aan dat de tekenreeksen gelijk zijn, omdat de methode de hoofdletterongevoelige vergelijking vergelijkt:

Laten we naar de volgende methode gaan!

Methode 3: Vergelijk twee strings met behulp van RegExp met test() Method

Er is een andere methode voor het vergelijken van twee tekenreeksen die ook hoofdletterongevoelige vergelijking uitvoert, genaamd ' RegExp ” met behulp van de “ testen() ” methode. Het controleert de gelijkheid van strings op basis van de gedefinieerde regex. De methode test() accepteert een string als argument voor vergelijking.

Syntaxis

Volg de gegeven syntaxis voor de test()-methode met behulp van RegEx met test()-methode:

regPatroon. testen ( str2 ) ;

Hier, ' str2 ” is de string die zal worden vergeleken met “ regPattern ”:

Voorbeeld

Nu zullen we een instantie van RegExp maken door een string door te geven ' str1 ” en een regex “ gi ' die de hoofdletterongevoelige vergelijking aangeeft en opslaat in een variabele ' regPattern ”:

was regPattern = nieuwe RegExp ( str1 , 'gi' ) ;

Daarna noemen we de ' testen() ' methode door de string ' door te geven str2 ’ als argument.

was jaar = regPatroon. testen ( str2 ) ;

Gebruik vervolgens de voorwaardelijke instructie om te controleren of de tekenreeksen gelijk zijn of niet:

als ( jaar ) {
troosten. log ( 'str1 is gelijk aan str2' ) ;
} anders {
troosten. log ( 'str1 is niet gelijk aan str2' ) ;
}

Uitgang:

Als u een tekenreeks wilt vergelijken met een andere tekenreeks als subtekenreeks, moet u de onderstaande sectie volgen.

Methode 4: Vergelijk twee strings met de methode include()

Om te bepalen of de tekenreeks een subtekenreeks is van de andere tekenreeks, biedt JavaScript een vooraf gedefinieerde methode genaamd de ' omvat() ” methode. Het neemt een string als argument en geeft een booleaanse waarde “ WAAR ” als het in de string voorkomt; anders keert het terug ' vals ”.

Syntaxis

Volg de onderstaande methode om de methode include() te gebruiken:

str1. omvat ( str2 ) ;

Hier, ' str2 ” is de string die controleert of deze is opgenomen of deel uitmaakt van de “ str1 ”:

Voorbeeld

Hier zullen we eerst twee strings maken, 'str1' en 'str2' en controleer of de tweede tekenreeks een subtekenreeks is van de eerste of niet:

was str1 = 'LinuxHint' ;
was str2 = 'in' ;

Bel hiervoor de 'includes()' methode door de 'str2' door te geven als argument:

troosten. log ( str1. omvat ( str2 ) ) ;

De uitvoer geeft ' WAAR ” wat aangeeft dat de “ str2 ” is het deel van de “ str1 ”:

We hebben alle methoden voor het vergelijken van twee JavaScript-strings gecompileerd.

Conclusie

Voor het vergelijken van twee JavaScript-tekenreeksen kunt u de methode localeCompare() gebruiken, de operator voor strikte gelijkheid, de methode RegEx met de methode test() of de methode include(). De operator voor strikte gelijkheid voert een hoofdlettergevoelige vergelijking uit, terwijl de methode test() en de methode localeCompare() de hoofdletterongevoelige vergelijking uitvoeren. Ten slotte controleert de methode include() de tekenreeks als een subtekenreeks in een andere tekenreeks. In dit artikel hebben we de methoden gedemonstreerd voor het vergelijken van twee tekenreeksen in JavaScript met de juiste voorbeelden.