const list1 = [1, 2];
const list2 = [1, 2];
const list3 = [1, 3];
console.log(list1 === list2); // false
console.log(list1 === list3); // false
list1과 list2는 분명 같은데도 false가 출력된다. 이것은 배열이 같은 값을 가지고 있지만, 동일한 객체는 아니기 때문이다. 즉, 두 배열이 같은 값을 가지고 있는 지를 확인하려면 JSON.stringify() 함수를 사용하면 된다. 배열의 내용을 문자열로 변환하고서 비교하는 방식이다.
const list1 = [1, 2];
const list2 = [1, 2];
const list3 = [1, 3];
console.log(JSON.stringify(list1) === JSON.stringify(list2)); // true
console.log(JSON.stringify(list1) === JSON.stringify(list3)); // false