javascript-如何在App脚本中比较2个数组
作者:互联网
我找不到如何在应用程序脚本中比较两个数组的方法,所以这是我想出的(使用stackoverflow的Q& A方法).
我想要一个函数来显示与数组2相同但与数组2不同的数组1的内容.
如果有人有更有效的方法,请发表.
解决方法:
我发现这更加简洁,如果您要进行大量记录,则速度会更快.如果您不关心仅通过使用主数组而不是将它们复制到相同/差异中来保留主数组,则可以加快速度.
它通过从差异中删除已找到的相同对象,然后从差异中删除并将不同的对象添加到差异区域中来工作.
//
function exampleCopareArrays(){
var array1 = [1,2,3,5];
var array2 = [5,1,4,6];
var same = array1;
//Set Same array = to 1 we will be deleting here
var diff =array2;
//Set dif array as one we will be adding too.
var matchfound = false;
for (var i=0; i < same.length; i++)
{
matchfound=false;
for (var p=0;p < diff.length;p++)
{
if (same[i] == diff[p])
{
diff.splice(p,1);
matchfound=true;
continue;
}
}
if (matchfound==false)
{
diff.push(same[i]);
same.splice(i, 1)
i=i-1;
}
}
same.sort();
diff.sort();
Logger.log(same);
Logger.log(diff);;
}
标签:javascript,arrays,google-apps-script 来源: https://codeday.me/bug/20191013/1904689.html