Есть несколько способов сравнить два массива в JavaScript. Мы рассмотрим два из них:
- с использованием
JSON.stringify()
- с использованием библиотеки lodash
JSON.stringify ()
Сначала мы преобразуем массивы в их строковую версию с помощью JSON.stringify ()
, а затем сравниваем с помощью ===
:
const arr1 = [1 , 2, 3]; const arr2 = [1, 2, 3]; console.log (JSON.stringify (arr1) === JSON.stringify (arr2)); //верно
Сравнение с
JSON.stringify ()
может не работать для более сложных случаев (например, если вы сравниваете массивы объектов и порядок свойств не имеет значения) . Используйте метод ниже, если вы хотите учесть и этот случай.
Lodash
lodash библиотеки JavaScript предлагает функцию _. isEqual (value1, value2)
. Эта функция выполняет глубокое сравнение двух значений, чтобы проверить, эквивалентны ли они.
Мы можем легко использовать этот метод для сравнения двух массивов:
import _ from "lodash"; const arr1 = [1, 2, 3]; const arr2 = [1, 2, 3]; console.log (_. IsEqual (arr1, arr2)); //верно