JSFiddle - React, Tailwind, and code Playground

JavaScript

var input = [[1, 2, 3], [1, 2, 4], [1, 2, 5]];
var occ = {};

// on compte les occurences O(n)
for (var iCollection = 0; iCollection < input.length; ++iCollection) {
    var collection = input[iCollection];
    for (var iElt = 0; iElt < collection.length; ++iElt) {
        if (!occ[collection[iElt]]) {
            occ[collection[iElt]] = 0;
        }
        occ[collection[iElt]] += 1;
    }
}

console.log(occ);

// on compile le plus grand commun O(n)
var res = [];
var inter = [];
for (var m in occ) {
    if (occ[m] === input.length) {
        inter.push(m);
    }
}
if (inter.length) res.push(inter);

// on compile le reste O(n)
for (var m in occ) {
    if (occ[m] != input.length) {
        res.push(m);
    }
}

// affichage du résultat 
strRes = "{";
for (var i = 0; i < res.length; ++i) {
    strRes += "{";
    for (var j = 0; j < res[i].length; ++j) {
        strRes += res[i][j] + ", ";
    }
    strRes += "},";
}
strRes += "}";

console.log(strRes);