Что это должно сделать, так это взять 2D-массив, заполненный с одним значением букв, и вернуть массив всех общих значений. Это то, что я до сих пор:Javascript: Поиск общих значений для нескольких массивов
var res = array[0].filter(function(x){
return array.every(function(y){
return y.indexOf(x) >= 0
})
});
return res;
Это в той или иной форме рабочего состояния, но только при определенных условиях, что делает его очень попало. Работа по назначению:
var array = [["x","x"],
["x","x","x"]];
Это возвращает ожидаемый массив [ "х", "х"], но когда, как это:
var array = [["x","x","x"],
["x","x"]];
возвращает [ "х", "х", «x»]
Как вы можете видеть, у двух массивов имеется только общий общий x, но код не отражает это в разных ситуациях. Кроме того, он должен быть в состоянии обрабатывать массивы с другими буквами так:
var array = [["x","x","z","y","y"],
["x,"x","x","y"],
["x","x","z","y"]];
С чем-то вроде этого он должен вернуться [ «х», «х», «у»], как все массивы разделяют 2 общих х и в 1 common y
Итак, вы хотите функцию, которую вы можете передать в произвольное количество массивов до, а затем получить обратно общие ценности, независимо от индекса? – adeneo
В третьем массиве нет 'y'. – void
Да, я не объяснял, как я создал примеры, но да –