JavaScript: найдите разницу двух массивов
Массив JavaScript: упражнение 23 с решением
Напишите функцию JavaScript, чтобы найти разницу между двумя массивами.
Тестовые данные:
console.log (разница ([1, 2, 3], [100, 2, 1, 10]));
["3", "10", "100"]
console.log (разница ([1, 2, 3, 4, 5], [1, [2], [3, [[4]]], [5,6]]));
[ "6"]
console.log (разница ([1, 2, 3], [100, 2, 1, 10]));
["3", "10", "100"]
Иллюстрированная презентация:
Пример решения :
HTML-код:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JS, difference between two arrays</title>
</head>
<body>
</body>
</html>
Код JavaScript:
function differenceOf2Arrays (array1, array2) {
var temp = [];
array1 = array1.toString().split(',').map(Number);
array2 = array2.toString().split(',').map(Number);
for (var i in array1) {
if(array2.indexOf(array1[i]) === -1) temp.push(array1[i]);
}
for(i in array2) {
if(array1.indexOf(array2[i]) === -1) temp.push(array2[i]);
}
return temp.sort((a,b) => a-b);
}
console.log(differenceOf2Arrays([1, 2, 3], [100, 2, 1, 10]));
console.log(differenceOf2Arrays([1, 2, 3, 4, 5], [1, [2], [3, [[4]]],[5,6]]));
Пример вывода:
[3,10,100] [6]
Блок - схема:
Версия ES6:
function differenceOf2Arrays (array1, array2) {
const temp = [];
array1 = array1.toString().split(',').map(Number);
array2 = array2.toString().split(',').map(Number);
for (var i in array1) {
if(!array2.includes(array1[i])) temp.push(array1[i]);
}
for(i in array2) {
if(!array1.includes(array2[i])) temp.push(array2[i]);
}
return temp.sort((a,b) => a-b);
}
console.log(differenceOf2Arrays([1, 2, 3], [100, 2, 1, 10]));
console.log(differenceOf2Arrays([1, 2, 3, 4, 5], [1, [2], [3, [[4]]],[5,6]]));
Демонстрация в реальном времени:
См. Pen JavaScript - найдите разницу между двумя массивами - array-ex-23 от w3resource ( @ w3resource ) в CodePen .
Улучшите этот пример решения и опубликуйте свой код через Disqus
Предыдущий: Напишите программу на JavaScript для вычисления объединения двух массивов.
Далее: написать функцию JavaScript для удаления. Значения 'null', '0', '' '', 'false', 'undefined' и 'NaN' из массива.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования