JS 比较两个数组是不是相等 是不是拥有相同元素
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS 比较两个数组是不是相等 是不是拥有相同元素相关的知识,希望对你有一定的参考价值。
要判断JS中的两个数组是否相同,需要先将数组转换为字符串,再作比较。以下两行代码将返回true<script type="text/javascript">
alert([].toString()== [].toString());
alert([].toString()===[].toString());
</script>
JS要比较两个数组是否有相同的元素,即两个数组所有元素都相同,但元素的顺序不一定一致。只就需要先将数组进行排序,再比较两个数组是否相等。
试比较以下两行代码:
<script type="text/javascript">
alert([1,2,3].toString()== [3,2,1].toString());
alert([1,2,3].sort().toString()== [3,2,1].sort().toString());
</script> 参考技术A
这里封装了一个函数库 jutils
/**
* 判断两个数组是否相等
*
* @since 0.1.0
* @category Array
* @param Array 要比较的数组
* @param other 另一个要比较的数组
* @returns boolean
* @example
*
* arrayEqual([0, 1],[1, 2])
* // => false
*/
判断两个数组是不是相等
参考技术A 如何比较两个数组内容是否相等
一、不能通过 \'==\' 或者 \'===\' 来判断两个数组是否相等
因为JavaScript里面,数组是对象,上面等式是判断两个数组是否是同一个引用对象;在JavaScript里面是没有内置判断两个数组相等的方法。
二、不推荐通过转换成字符串
当数组中有数字1,另一个数组中是字符串\'1\',如此两个数组就不相等了,此方法无效,反而会造成不必要的误导。
三、正确方法如下
四、两个对象是否相等
转自: https://www.cnblogs.com/-867259206/p/6795354.html
以上是关于JS 比较两个数组是不是相等 是不是拥有相同元素的主要内容,如果未能解决你的问题,请参考以下文章