In this article, we will see how to compare two arrays in JavaScript. First, we need to compare the length of both arrays should be the same or not, and then whether objects present in them are of the same type and whether each item of one array is equal to the other array or not.
Methods to compare two arrays in JavaScript:
JavaScript provides a function JSON.stringify() method in order to convert an object whether or array into a JSON string. By converting it into JSON strings, we can directly check if the strings are equal or not.
Example: This example uses JSON.stringify() method to convert an object or array into a JSON string, then accordingly check for the given condition. If it satisfies the specific condition then it returns true otherwise, it will return false.
Javascript
let arr1 = [1, 2, 3, 5];
let arr2 = [1, 2, 3, 5];
if (JSON.stringify(arr1) == JSON.stringify(arr2))
console.log( "True" );
else
console.log( "False" );
let arr3 = [1, 2, 4, 5];
if (JSON.stringify(arr1) == JSON.stringify(arr3))
console.log( "True" );
else
console.log( "False" );
|
Method 2: Using for Loop element
In this method, we will compare each element of the array one by one using for loop.
Example: In this example, we manually check each and every item and return true if they are equal otherwise return false.
Javascript
function isEqual() {
let a = [1, 2, 3, 5];
let b = [1, 2, 3, 5];
if (a.length != b.length)
return "False" ;
else {
for (let i = 0; i < a.length; i++)
if (a[i] != b[i])
return "False" ;
return "True" ;
}
}
let v = isEqual();
console.log(v);
|
Method 3: String Comparison
While JavaScript does not have an inbuilt method to directly compare two arrays, it does have inbuilt methods to compare two strings. Strings can also be compared using the equality operator. Therefore, we can convert the arrays to strings, using the Array join() method, and then check if the strings are equal.
Example:
Javascript
function isEqual(a, b) {
return a.join() == b.join();
}
let a = [1, 2, 3, 5];
let b = [1, 2, 3, 5];
console.log(isEqual(a, b));
|
The Javascript Array.every() method considers all the elements of an array and then further checks whether all the elements of the array satisfy the given condition (passed by in user) or not that is provided by a method passed to it as the argument.
Javascript
const compareFunc = (a, b) =>
a.length === b.length &&
a.every((element, index) => element === b[index]);
let a = [1, 2, 3, 5];
let b = [1, 2, 3, 5];
console.log(compareFunc(a, b));
|
JavaScript is best known for web page development but it is also used in a variety of non-browser environments. You can learn JavaScript from the ground up by following this JavaScript Tutorial and JavaScript Examples.