我有以下两个数组
。
bulkSheet[] - Original array
resultsArray[] - Checking array
我正在比较'bulkSheet
'数组的第一个元素和'resultArray
'。以下是我目前所做的代码。它可以正常执行,但需要很长时间,并会出现“超过最大执行时间”的错误。
for(var line in bulkSheet) {
for (var line2 in resultsArray)
{
if(bulkSheet[line][0] == resultsArray[line2][0])
{
// matched items
}
}
}
有没有更快的方法?
const arr1 = [1, 2, 3]; const arr2 = [1, 2, 3]; if (JSON.stringify(arr1) === JSON.stringify(arr2)) { console.log("Arrays are equal!"); } else { console.log("Arrays are not equal."); }
你也可以编写自己的函数来比较数组。例如:function arraysEqual(arr1, arr2) { if (arr1.length !== arr2.length) return false; for (let i = 0; i < arr1.length; i++) { if (arr1[i] !== arr2[i]) return false; } return true; } const arr1 = [1, 2, 3]; const arr2 = [1, 2, 3]; if (arraysEqual(arr1, arr2)) { console.log("Arrays are equal!"); } else { console.log("Arrays are not equal."); }
- gurvinder372indexOf(value)
方法。如果indexOf()
的返回值为-1,则没有匹配项。如果有匹配项,则它将返回被测试数组中匹配项的索引位置。从索引号码,您可以返回该值,或者如果您希望,可以覆盖它。因此,var isMatched = secondArray.indexOf(first array循环的值); if(isMatched!== -1){var matchedValFromArray2 = arrayTwo [isMatched]};
- Alan Wells