Compare the Case Insensitive strings in JavaScript

Comparing strings in a case-insensitive manner means comparing them without taking care of the uppercase and lowercase letters. 

Here are some common approaches to compare the case-insensitive string in JavaScript:

Table of Content

  • JavaScript toUpperCase() function
  • JavaScript toLowerCase() function
  • Using localCompare()
  • Using regular expression

Approach 1: JavaScript toUpperCase() function

The str.toUpperCase() function converts the entire string to Upper case. This function does not affect any of the special characters, digits, and alphabets that are already in upper case. 

Syntax:

string.toUpperCase();

Example: This example uses toUpperCase() function to compare two strings. 

Javascript
let str1 = "this iS w3wiki";
let str2 = "This IS w3wiki";
console.log(str1)
console.log(str2)

function myBeginner() {
    let areEqual = str1.toUpperCase() === str2.toUpperCase();
    console.log(areEqual);
}
myBeginner()

Output
this iS w3wiki
This IS w3wiki
true

Approach 2: JavaScript toLowerCase() function

The str.toLowerCase() function converts the entire string to lowercase. This function does not affect any of the special characters, digits, and alphabets that are already in lowercase. 

Syntax:

string.toLowerCase();

Example: This example uses the toLowerCase() function to compare two strings. 

Javascript
let str1 = "this iS Beginner";
let str2 = "This IS w3wiki";
console.log(str1)
console.log(str2)

function myBeginner() {
    let areEqual = str1.toLowerCase() === str2.toLowerCase();
    console.log(areEqual);
}
myBeginner()

Output
this iS Beginner
This IS w3wiki
false

Approach 3: Using localCompare()

The localeCompare() method in JavaScript compares strings based on the current locale, returning a value indicating their relative order.

Syntax:

referenceString.localeCompare(compareString);

Example: In this example, we will use the localeCompare function to compare two strings. 

Javascript
let str1 = "this iS Beginner";
let str2 = "This IS w3wiki";
console.log(str1)
console.log(str2)

function myBeginner() {
    let areEqual = str1.localeCompare(str2, undefined, { sensitivity: 'accent' });
    console.log(areEqual === 0 ? true : false);
}
myBeginner()

Output
this iS Beginner
This IS w3wiki
false

Approach 4: Using regular expression

A regular expression (regex) is a sequence of characters that define a search pattern.

Syntax:

let regex = new RegExp(pattern, flags);

Example: In this example, we will use the regular expression to compare two strings. 

Javascript
let str1 = "this iS w3wiki";
let str2 = "This IS w3wiki";
console.log(str1)
console.log(str2)

function myBeginner() {
    let pattern = new RegExp(str1, 'gi');
    let result = pattern.test(str2);
    console.log(result ? true : false);
}
myBeginner()

Output
this iS w3wiki
This IS w3wiki
true

This approach is similar to Approach 2 but provides an alternative method using the === operator directly with the lowercase versions of the strings. It’s concise and readable.