- Во-вторых, мы просто сравним два массива и вернем новый массив с любыми элементами, которые можно найти только в одном из двух заданных массивов, но не обоих. Помните ключевое слово «не оба».
- Проблема ниже:
function arrays(arr1, arr2) { } arrays([1, 2, 4, 5], [1, 2, 3, 4, 5]);
Отвечать:
function arrays(arr1, arr2) { let merge = arr1.concat(arr2); return merge.filter(function(num) { // <--- num are all the numbers in merge. [1, 2, 4, 5, 1, 2, 3, 4, 5] if (arr1.indexOf(num) === -1 || arr2.indexOf(num) === -1) { return num; } }) } console.log(arrays([1, 2, 4, 5], [1, 2, 3, 4, 5])); // will display [3]
- Мы просто проверяем две массивы и вернем новый массив, который содержит только элементы, которые не в одном из исходных массивов. В этом случае 3.
- То, что мы сделали, было объединить список, чтобы облегчить сравнение и использовать фильтр для получения нового массива, в котором вам нужно будет создать функцию обратного вызова.
Оригинал: «https://dev.to/rthefounding/comparing-two-different-arrays-209f»