Array intersect.
// array_multi_intersect([[1, 2, 3], [2, 3, 4], [0, 2, 3, 8]]); => [2, 3]
function array_multi_intersect(arr)
{
var firstArr = [],
totalArr = [],
i,
j,
k;
if (arr.length < 2) {
return arr;
}
firstArr = arr[0];
for (i = 0; i < firstArr.length; i += 1) {
for (j = 1; j < arr.length; j += 1) {
if (arr[j].indexOf(firstArr[i]) === -1) {
firstArr[i] = false;
break;
}
}
}
for (k = 0; k < firstArr.length; k += 1) {
if (firstArr[k]) {
totalArr.push(firstArr[k]);
}
}
return totalArr;
}