Sobes.tech
Middle

/* Reikia įgyvendinti intersection metodą, kuris išplečia standartinius rinkinių (Set) metodus. Šis metodas priima kitą rinkinį kaip parametrą ir grąžina naują rinkinį, kuris yra pirminio ir perduoto rinkinių sankirta, t.y., turi tik tuos elementus, kurie yra abiejų rinkinių. */ // jūsų kodas const set1 = new Set([1, 2, 3, 4]); const set2 = new Set([3, 4, 5, 6, 7, 8]); console.log(...set1.intersection(set2)) // 3 4 --- Set.prototype.intersection = function (set2) { const result = new Set(); for(const value of this) { if (set2.has(value)) result.add(value); } return result; } const set1 = new Set([1, 2, 3, 4]); const set2 = new Set([3, 4, 5, 6, 7, 8]); console.log(...set1.intersection(set2)) // 3 4

sobes.tech AI

Atsakymas iš AI

Set klasės intersection metodas gali būti įgyvendintas pridėjus jį prie Set prototipo. Jis priima kitą rinkinį ir grąžina naują rinkinį, kuriame yra tik tie elementai, kurie yra abiejose rinkiniuose.

Set.prototype.intersection = function (otherSet) {
    const result = new Set();
    for (const item of this) {
        if (otherSet.has(item)) {
            result.add(item);
        }
    }
    return result;
};

const set1 = new Set([1, 2, 3, 4]);
const set2 = new Set([3, 4, 5, 6, 7, 8]);

console.log(...set1.intersection(set2)); // 3 4

Šis metodas pereina per pirmojo rinkinio elementus ir į rezultatą įtraukia tik tuos, kurie yra ir antrajame rinkinyje.