我有两个 arrays
如下。
bulkSheet[] - Original array
resultsArray[] - Checking array
我正在比较 '
bulkSheet
的第一个元素' 数组与 ' resultArray
'。下面的代码是我到目前为止所做的。它执行得很好但需要很长时间并给出 Exceeded maximum execution time
错误。for(var line in bulkSheet) {
for (var line2 in resultsArray)
{
if(bulkSheet[line][0] == resultsArray[line2][0])
{
// matched items
}
}
}
有什么最快的方法吗?
最佳答案
谢谢@sandy-good!,
如果是一维数组,我们可以使用 indexOf() 方法。
for(var line in firstArray)
{
var isMatched = secondArray.indexOf(firstArray[line]);
if (isMatched !== -1)
{
var matchedValFromArray2 = secondArray[isMatched]
};
}
如果要比较二维数组(或电子表格的两行),可以使用
.join()
方法。for(var i in firstArray)
{
var duplicate = false;
for(var j in secondArray)
{
if(firstArray[i].join() == secondArray[j].join())
{
var matchedValFromArray2 = firstArray[i];
break;
}
}
}
关于arrays - 比较两个数组以在 Google 应用程序脚本上找到相等值的最快方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34587100/