得到两个数组的差异

时间:2018-03-15 14:34:37

标签: javascript arrays

我想要实现的是将两个数组与图像源字符串进行比较并得到它的不同并将其存储在一个新数组中。

以下是我如何使用两个数组作为参数执行该函数

compareImgUrls(extractedResources, currentExtractedResources);

这就是功能:

function compareImgUrls(array1, array2) {

            var a = [], 
            diff = [];

            for (var i = 0; i < array1.length; i++) {
                a[array1[i]] = true;
            }

            for (var i = 0; i < array2.length; i++) {
                if (a[array2[i]]) {
                    delete a[array2[i]];
                } else {
                    a[array2[i]] = true;
                }
            }

            for (var k in a) {
                diff.push(k);
            }
            console.log('diff', diff)
            return diff;
        }

但是这会返回一个数组,其中所有字符串都在后面而不是差别。如何比较这些数组并删除重复的字符串,并将其他数组存储在新数组中。

0 个答案:

没有答案