我想比较两个阵列......理想情况下,有效率.没有什么花哨的,只要true它们是相同的,false如果不相同的话.毫不奇怪,比较运算符似乎不起作用.
var a1 = [1,2,3];
var a2 = [1,2,3];
console.log(a1==a2); // Returns false
console.log(JSON.stringify(a1)==JSON.stringify(a2)); // Returns true
Run Code Online (Sandbox Code Playgroud)
每个数组的JSON编码都有,但有没有更快或更"简单"的方法来简单地比较数组而不必迭代每个值?
我有两个JavaScript对象数组,我想比较它们是否相同.对象可能不会(并且很可能不会)在每个数组中具有相同的顺序.每个数组不应超过10个对象.我认为jQuery可能有一个优雅的解决方案来解决这个问题,但我无法在网上找到太多.
我知道一个粗暴的嵌套$.each(array, function(){})解决方案可以工作,但是有没有我不知道的内置函数?
谢谢.
我开始时:
"1:2".split(':') == ["1","2"];
// false
Run Code Online (Sandbox Code Playgroud)
然后尝试:
[1,2] == [1,2];
// false
Run Code Online (Sandbox Code Playgroud)
最终:
[] == [];
// false
Run Code Online (Sandbox Code Playgroud)
我发现了:
"1:2".split(':').toString() == [1,2].toString();
// true
Run Code Online (Sandbox Code Playgroud)
所以我已经解决了我的初始问题(种类),但为什么数组不能相互匹配?