function arraysSimilar(arr1, arr2){ if(arr1.length == arr2.length){ for(var i=0;i<arr1.length;i++){ if(Object.prototype.toString.apply(arr1[i]) == Object.prototype.toString.apply(arr2[i])){ continue; } return false; } return true; } return false; }
我的意思是按照它说的条件:
比较的两个数组长度相等
数组元素类型一样
所以我的思路是:先比较长度,长度不等直接可以返回false了,如果长度相等再进一步遍历两个数组的元素,下标相等的两个数组元素用Object.prototype.toString.apply()判断它们的类型是否相同,是的话返回true,如果遍历的过程中有类型不同的就返回false。不知道我这样的思路以及用的这个Object.prototype.toString.apply()正不正确
数组是乱序的,这样写会出错
你这是比较两个数组是否相等?看着没什么问题啊