Javascript 获得数组中相同或不同的数组元素

                Javascript 获得数组中相同或不同的数组元素

    在Javascript中,偶尔会用到获取数组中相同或不同的元素值的情况,以下提供了获得数组中相同或不同的

元素函数供参考学习使用。

 1     // 数字类型
 2     // let firstArray = [1, 2, 3, 4, 5];
 3     // let secondArray = [1, 2, 3];
 4 
 5     // 字符串类型
 6     let firstArray = ['one', 'two', 'three', 'four', 'five'];
 7     let secondArray = ['one', 'two', 'three'];
 8 
 9     let sameArray = getTheSameArrays(firstArray, secondArray);
10     let diffArray = getDifferentArrays(firstArray, secondArray);
11 
12     // 测试数字类型数组
13     // console.log(sameArray);   // [1, 2, 3]
14     // console.log(diffArray);   // [4,5]
15 
16     // 测试字符串类型数组
17     console.log(sameArray);   // ['one', 'two', 'three']
18     console.log(diffArray);   // ['four', 'five']
19 
20     function getDifferentArrays(array1, array2) {
21         return array1.concat(array2).filter(function (v, i, array) {
22             return array.indexOf(v) === array.lastIndexOf(v);
23         });
24     }
25 
26     function getTheSameArrays(array1, array2) {
27         let newArray = [];
28         for (let i = 0; i < array2.length; i++) {
29             for (let j = 0; j < array1.length; j++) {
30                 if (array1[j] === array2[i]) {
31                     newArray.push(array1[j]);
32                 }
33             }
34         }
35         return newArray;
36     }
原文地址:https://www.cnblogs.com/jhtian/p/14066571.html