js:比较两个数组元素是否完全相同

简介: js:比较两个数组元素是否完全相同

比较两个数组元素是否完全相同

如果直接比较,比较的是两个对象,只有同一个对象比较才会相等

一个思路是:将数组元素转为字符串,通过字符串比较

如果顺序不一样,可以先排序再进行比较

let arr1 = [1, 2, 3]
let arr2 = [1, 2, 3]
let arr3 = [3, 2, 1]
// 直接比较
console.log(arr1 == arr1) // true
console.log(arr1 == arr2) // false
console.log(arr1 == arr3) // false
// toString 转为字符串后再比较
console.log(arr1.toString()); // 1,2,3
console.log(arr1.toString() == arr1.toString()) // true
console.log(arr1.toString() == arr2.toString()) // true
console.log(arr1.toString() == arr3.toString()) // false
// join 转为字符串后再比较
console.log(arr1.join()); // 1,2,3
console.log(arr1.join() == arr1.join()) // true
console.log(arr1.join() == arr2.join()) // true
console.log(arr1.join() == arr3.join()) // false
// sort 排序后再比较
console.log(arr1.sort()); // [ 1, 2, 3 ]
console.log(arr1.sort().toString() == arr1.sort().toString()) // true
console.log(arr1.sort().toString() == arr2.sort().toString()) // true
console.log(arr1.sort().toString() == arr3.sort().toString()) // true

比较对象数组

let obj1 = {name: 'Tom', age: 20}
let obj2 = {name: 'Tom', age: 20}
// JSON.stringify 可比较对象数组
console.log(JSON.stringify(obj1)); // {"name":"Tom","age":20}
console.log(JSON.stringify(obj1) == JSON.stringify(obj2)) // true

参考

js判断两个数组相等的5种方法实例

相关文章
|
6天前
|
JavaScript 前端开发 开发者
.js的dom元素操作
【10月更文挑战第29天】通过灵活运用这些 DOM 元素操作方法,JavaScript 可以实现丰富的网页交互效果,如动态更新页面内容、响应用户操作、创建和删除页面元素等。在实际开发中,开发者可以根据具体的需求和场景,选择合适的 DOM 元素操作方法来实现所需的功能,为用户提供更加流畅和动态的网页体验。
|
25天前
|
自然语言处理 前端开发 JavaScript
🛠️ JavaScript数组操作指南:20个精通必备技巧🚀
本文详细介绍了 JavaScript 中的 20 个高效数组操作技巧,涵盖了从基本的添加、移除元素,到数组转换和去重等高级操作。强调了不可变性的重要性,提供了清晰的代码示例,帮助开发者编写更整洁和高效的代码。无论是新手还是经验丰富的开发者,这些技巧都将显著提升您的编码能力,使您在项目中更具竞争力。
17 2
|
28天前
|
JavaScript 前端开发 测试技术
JS都有哪些操作数组的方法
JS都有哪些操作数组的方法
20 3
|
29天前
|
移动开发 JavaScript 前端开发
原生js如何获取dom元素的自定义属性
原生js如何获取dom元素的自定义属性
41 4
|
30天前
|
JavaScript
js删除数组中已知下标的元素
js删除数组中已知下标的元素
34 4
|
28天前
|
缓存 JavaScript 前端开发
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
29 1
|
1月前
|
JavaScript 前端开发 Java
【javaScript数组,函数】的基础知识点
【javaScript数组,函数】的基础知识点
23 5
|
1月前
|
JavaScript 前端开发 索引
探索JavaScript数组:基础
探索JavaScript数组:基础
17 3
|
1月前
|
JavaScript 前端开发 索引
JS 删除数组元素( 5种方法 )
JS 删除数组元素( 5种方法 )
31 1
|
1月前
|
JavaScript 前端开发
如何在JS中声明一个数组
如何在JS中声明一个数组
18 0