У меня есть несколько массивов со строковыми значениями, и я хочу их сравнить, и только совпадающие результаты совпадают между ними ВСЕ.
Учитывая этот пример кода:
var arr1 = ['apple', 'orange', 'banana', 'pear', 'fish', 'pancake', 'taco', 'pizza'];
var arr2 = ['taco', 'fish', 'apple', 'pizza'];
var arr3 = ['banana', 'pizza', 'fish', 'apple'];
Я хотел бы создать следующий массив, содержащий совпадения от всех заданных массивов:
['apple', 'fish', 'pizza']
Я знаю, что я могу объединить все массивы с var newArr = arr1.concat(arr2, arr3);
, но это просто дать мне массив со всем, плюс дубликаты. Можно ли это сделать легко, без накладных расходов на такие библиотеки, как underscore.js?
(Отлично, и теперь я тоже голоден!)
EDIT Предположим, я должен упомянуть, что может быть неизвестное количество массивов, в качестве примера я использовал только 3.