我有两个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
}
}
}
有没有最快的方式?
答案 0 :(得分:1)
谢谢@ sandy-good !, 如果它是一维数组,我们可以使用indexOf()方法。
for(var line in firstArray)
{
var isMatched = secondArray.indexOf(firstArray[line]);
if (isMatched !== -1)
{
var matchedValFromArray2 = secondArray[isMatched]
};
}
如果要比较2D数组(或电子表格的两行),可以使用.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;
}
}
}