Jak porównać dwa ciągi w JavaScript

Jak porównać dwa ciągi w JavaScript

[Istnieją pewne sytuacje, w których programiści muszą porównać dwa struny. Większość programistów często popełnia błąd, próbując porównać swoje struny w JavaScript za pomocą operatora ==. Operator == ma pewne ograniczenia w tej sytuacji, ponieważ typów zmiennych nie można zweryfikować za pomocą tego. Może być konieczne poszukiwanie innych metod radzenia sobie z sytuacją.

W tym artykule pokazuje procedurę porównywania ciągów w JavaScript.

Jak porównać dwa ciągi w JavaScript?

Do porównania dwóch ciągów JavaScript użyj następujących wymienionych metod:

  • Ścigający operator równości „===”
  • Metoda localecompar ()
  • Regex z metodą testu ()
  • obejmuje () metodę

Przeanalizujmy działanie każdej metody osobno.

Metoda 1: Porównaj dwa ciągi przy użyciu operatora równości ścisłej

Ścigający operator równości (===) można wykorzystać do potwierdzenia, czy ciągi są równe, czy nie. Jeśli ciągi są różne, zwraca false jako wyjście; w przeciwnym razie daje to prawda. Ponieważ jest to metoda wrażliwa na przypadek, porównując ciągi, porównuje również przypadek liter, co oznacza, że ​​małe litery i wielkie litery są uważane za różne.

Składnia

Użyj poniższej składni do porównania dwóch ciągów za pomocą operatora ścisłego równości:

str1 === str2;

Tutaj "===„Operator porównuje wartość i danych STR1 i STR2.

Przykład

W tym przykładzie porównajmy dwa ciągi, jeden jest w górnej sprawie, a drugi jest małymi literami. Aby to zrobić, najpierw utworzymy dwie wymienione zmienne „STR1” i „STR2” który przechowuje ciągi „Linuxhint" I "Linuxhint”:

var str1 = "Linuxhint";
var str2 = "Linuxhint";

Następnie zadzwoń do „konsola.dziennik()„Metoda drukowania wyniku, który mówi, czy ciągi są równe, czy nie używa się”===„Operator:

konsola.log (str1 === str2);

Wyjście pokazuje „FAŁSZ„Co wskazuje, że ciągi nie są równe, ponieważ operator równości dokonuje wrażliwych na przypadki porównania:

Jeśli chcesz dokonać porównywania ciągłego przypadku, musisz postępować zgodnie z metodami poniżej podania.

Metoda 2: Porównaj dwa ciągi przy użyciu metody Localecompar ()

"localCompare ()”Jest predefiniowaną metodą JavaScript stosowaną do porównywania dwóch ciągów. Wykonuje porównanie ciągów wrażliwych na sprawę i wykorzystuje bieżącą lokalizację do porównania dwóch ciągów.

Składnia

Postępuj zgodnie z poniższą składnią do porównania dwóch ciągów przy użyciu metody Localecompar ():

str1.Localecompary (STR2);

Tutaj, "str2”To ciąg, który zostanie porównany z„str1”:

Przykład

Będziemy teraz używać tych samych ciągów, które zostały już utworzone w poprzednim przykładzie, a następnie porównać je za pomocą „localCompare ()„Metoda z pomocą operatora warunkowego:

if (str1.localecompary (str2))
konsola.log („STR1 jest równy STR2”);
w przeciwnym razie
konsola.log („Str1 nie jest równe do Str2”);

Jak widać, wyjście wskazuje, że ciągi są równe, ponieważ metoda porównuje porównanie wrażliwości na przypadek:

Przejdźmy do następnej metody!

Metoda 3: Porównaj dwa ciągi za pomocą RegeXP z metodą test ()

Istnieje inna metoda porównywania dwóch ciągów, które wykonują również porównanie wrażliwe na przypadki o nazwie „Regexp”Z pomocą„test()" metoda. Sprawdza równość ciągów na podstawie zdefiniowanej regex. Metoda testu () zaakceptuje ciąg jako argument do porównania.

Składnia

Postępuj zgodnie z podaną składnią do metody test () przy użyciu Regex z metodą test ():

Regpattern.test (STR2);

Tutaj, "str2”To ciąg, który zostanie porównany z„Regpattern”:

Przykład

Teraz utworzymy instancję RegeXP, przekazując ciąg „str1”I Regex”żołnierz amerykański„To wskazuje porównanie wrażliwe na przypadek i przechowuje je w zmiennej”Regpattern”:

var regPattern = new Regexp (str1, „gi”);

Potem nazwiemy „test()„Metoda, przekazując ciąg”str2„Jako argument.

var ans = regpattern.test (STR2);

Następnie użyj stwierdzenia warunkowego, aby sprawdzić, czy ciągi są równe, czy nie:

if (ans)
konsola.log („STR1 jest równy STR2”);
w przeciwnym razie
konsola.log („Str1 nie jest równe do Str2”);

Wyjście

Jeśli chcesz porównać ciąg z innym ciągiem jako podłoże, musisz postępować zgodnie z poniższą sekcją.

Metoda 4: Porównaj dwa ciągi przy użyciu metody ()

Aby ustalić, czy ciąg jest podłożem drugiego ciągu, JavaScript zapewnia predefiniowaną metodę o nazwie „Obejmuje ()" metoda. Zajmuje to sznur jako argument i daje wartość logiczną „PRAWDA„Jeśli istnieje w ciągu; W przeciwnym razie wraca „FAŁSZ".

Składnia

Postępuj zgodnie z podmiotem metodą zastosowania metody:)

str1.Obejmuje (STR2);

Tutaj, "str2”To ciąg, który sprawdza, czy jest włączony, czy część„str1”:

Przykład

Po pierwsze, stworzymy dwa struny, „STR1” i „STR2” i sprawdź, czy drugi ciąg jest przedtem, czy nie:

var str1 = "Linuxhint";
var str2 = "in";

W tym celu zadzwoń Metoda „obejmuje ()”, przekazując „STR2” jako argument:

konsola.log (str1.obejmuje (str2));

Wyjście daje „PRAWDA„Co wskazuje, że„str2”Jest częścią„str1”:

Zebraliśmy wszystkie metody porównywania dwóch ciągów JavaScript.

Wniosek

Do porównania dwóch ciągów JavaScript można użyć metody Localecompar (), operatora ścisłego równości, Regex z metodą testu () lub Metoda (). Operator ścisłej równości wykonuje wrażliwe na przypadki porównanie, podczas gdy metoda testu () i metoda Localecompar () wykonują porównanie wrażliwości przypadków. Wreszcie metoda zawiera () sprawdza ciąg jako podłoże w innym ciągu. W tym artykule zademonstrowaliśmy metody porównywania dwóch ciągów w JavaScript z odpowiednimi przykładami.