比较两个JavaScript对象/数组值

比较两个JavaScript对象/数组值,javascript,arrays,angular,object,Javascript,Arrays,Angular,Object,我有一件不清楚的事想问你。 假设我有两个API调用。 一个返回数组: array1 = [H, 3, 2] 第二个返回对象: array2 = [ {0: 1, 1: 1, 2: 1}, {0: 3, 1: 2, 2: 1}, {0: 'p', 1: 2, 2: 4}, {0: 'r', 1: 2, 2: 2}, {0: 'h', 1: 2, 2: 3} ]; 如何比较这两个值?例如,array2[4]的值是H,2,3,与array1的值H,3,2相等,但顺序不同。 如何仅比较值而不比较

我有一件不清楚的事想问你。 假设我有两个API调用。 一个返回数组:

array1 = [H, 3, 2]
第二个返回对象:

array2 = [
{0: 1, 1: 1, 2: 1},
{0: 3, 1: 2, 2: 1},
{0: 'p', 1: 2, 2: 4},
{0: 'r', 1: 2, 2: 2},
{0: 'h', 1: 2, 2: 3}   ];
如何比较这两个值?例如,array2[4]的值是H,2,3,与array1的值H,3,2相等,但顺序不同。 如何仅比较值而不比较其顺序,并在array2值(等于array1)中找到布尔值后将其结果作为true。顺便说一句,我使用的是Angular+TypeScript


希望有人能帮我解决这个问题。

有很多方法,我认为最简单的方法是对它进行排序并加入它,然后进行字符串比较

数组1=[h',3,2] 阵列2=[ {0: 1, 1: 1, 2: 1}, {0: 3, 1: 2, 2: 1}, {0:'p',1:2,2:4}, {0:'r',1:2,2:2}, {0:'h',1:2,2:3} ]; var test=array1.sort.join var result=array2.someobj=>Object.valuesobj.sort.join==test 控制台。日志结果 设数组1=[h',3,2]; 设array2=[ {0: 1, 1: 1, 2: 1}, {0: 3, 1: 2, 2: 1}, {0:'p',1:2,2:4}, {0:'r',1:2,2:2}, {0:'h',1:2,2:3} ]; 功能比较A1,a2{ 因为我在a2{ 如果a1.sort==Object.valuesi.sort{ 返回true; } } 返回false; }
console.logcomparararay1,array2;你到底想做什么?返回布尔值是否存在匹配项?获取匹配的索引?阵列中出现问题2您尝试过或研究过什么吗?我的意思是,多集相等并不完全是一个新概念。@ASDFGerte是的,我做过研究,但没有一个是在对象和数组之间。非常感谢,它现在起作用了!!!我觉得不使用sort有点愚蠢,因为除了那个之外,我确实使用了所有的。