📅  最后修改于: 2023-12-03 15:26:11.874000             🧑  作者: Mango
在 JavaScript 中,我们可以使用数组比较运算符 ==
和 ===
来比较两个数组。
使用 ==
运算符比较两个数组时,比较的是它们的引用,而不是它们的内容。
let arr1 = [1, 2, 3];
let arr2 = [1, 2, 3];
console.log(arr1 == arr2); // false
在上面的例子中,arr1
和 arr2
是两个不同的数组,它们的引用不同,因此 arr1 == arr2
返回 false
。
使用 ===
运算符比较两个数组时,比较的是它们的引用和内容。
let arr1 = [1, 2, 3];
let arr2 = [1, 2, 3];
console.log(arr1 === arr2); // false
let arr3 = arr1;
console.log(arr1 === arr3); // true
在第一个例子中,arr1
和 arr2
是两个不同的数组,它们的引用不同,因此 arr1 === arr2
返回 false
。
在第二个例子中,arr3
是 arr1
的引用,因此 arr1 === arr3
返回 true
。
如果想要比较两个数组的内容是否相同,我们可以使用 JSON.stringify()
方法将数组转换为字符串,然后再进行比较。
let arr1 = [1, 2, 3];
let arr2 = [1, 2, 3];
console.log(JSON.stringify(arr1) === JSON.stringify(arr2)); // true
在上面的例子中,JSON.stringify(arr1)
和 JSON.stringify(arr2)
都返回字符串 "[1,2,3]"
,因此它们相等,JSON.stringify(arr1) === JSON.stringify(arr2)
返回 true
。