Open In App
Related Articles

JavaScript String localeCompare() Method

Improve
Improve
Improve
Like Article
Like
Save Article
Save
Report issue
Report

The string.localeCompare() is an inbuilt method in JavaScript that is used to compare any two elements and returns a positive number if the reference string is lexicographically greater than the compare string and a negative number if the reference string is lexicographically smaller than the compare string and zero (0) if the compare and reference strings are equivalent. 

Syntax:

referenceString.localeCompare(compareString);

Parameters:

Here the parameter compareString is a string with which the reference string is compared. 

Return Values:

It returns a positive number if the reference string is lexicographically greater than the compare string and negative number if the reference string is lexicographically smaller than the compare string and zero (0) if the compare and reference strings are equivalent.

Example 1: This example shows the basic use of the string.localeCompare() Method in Javascript, here we compare the strings based on the locale-specific sorting order and return -1 because “apple” comes before “banana” alphabetically.

javascript

let str1 = "apple";
let str2 = "banana";
let result = str1.localeCompare(str2);
console.log(result);

                    

Output
-1

Example 2: This example shows the basic use of the string.localeCompare() Method in Javascript.

javascript

// An alphabet "n" comes before "z" which
// gives a negative value
let a = 'n'.localeCompare('z');
console.log(a)
 
// Alphabetically the word "gfg" comes after
// "geeksforgeeks" which gives a positive value
let b = 'gfg'.localeCompare('geeksforgeeks');
console.log(b)
 
// "gfg" and "gfg" are equivalent which
// gives a value of zero(0)
c = 'a'.localeCompare('a');
console.log(c)

                    

Output
-1
1
0

Example 3: In this example we are using localeCompare() Method to sort the elements.

javascript

// Taking some elements to sort alphabetically
let elements = ['gfg', 'geeksforgeeks', 'cse', 'department'];
let a = elements.sort((a, b) => a.localeCompare(b));
 
// Returning sorted elements
console.log(a)

                    

Output
[ 'cse', 'department', 'geeksforgeeks', 'gfg' ]

Example 4: In the example, we compare “geeks” and “GEEKS” case-insensitively using localeCompare(). The result is 0, indicating they are considered equal.

Javascript

let str1 = "geeks";
let str2 = "GEEKS";
let result = str1.localeCompare(str2, undefined, { sensitivity: "base" });
console.log(result);

                    

Output
0

Note: the localeCompare() method performs a case-insensitive comparison using the { sensitivity: “base” } option. In this case, “geeks” and “GEEKS” are considered equal because the comparison ignores the difference in letter case.

We have a complete list of Javascript string methods, to check those please go through this Javascript String Complete reference article.

Supported Browsers: 

  • Chrome 1 and above
  • Edge 12 and above
  • Firefox 1 and above
  • Internet Explorer 5.5 and above
  • Opera 7 and above
  • Safari 3 and above


Last Updated : 27 Dec, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads