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 }