תאריך פרסום: 26 ביוני 2024
מעכשיו אפשר להשתמש ב-JavaScript Set
methods כדי לבצע פעולות על קבוצות, כמו intersection, union ועוד.
קבוצות הן מבנה נתונים חיוני בכל שפת תכנות. עכשיו אפשר להשתמש בשיטות המובנות של JavaScript כדי לבצע פעולות על קבוצות. אפשר לפשט את פעולות הקבוצות באמצעות השיטות הבאות:
intersection()
הפונקציה intersection() מחזירה קבוצה חדשה שמכילה אלמנטים גם מהקבוצה הזו וגם מהקבוצה שצוינה.
const odds = new Set([1, 3, 5, 7, 9]);
const squares = new Set([1, 4, 9]);
console.log(odds.intersection(squares)); // Set(2) { 1, 9 }
union()
הפונקציה union() מחזירה קבוצה חדשה שמכילה את כל האלמנטים בקבוצה הזו ובקבוצה שצוינה.
const evens = new Set([2, 4, 6, 8]);
const squares = new Set([1, 4, 9]);
console.log(evens.union(squares)); // Set(6) { 2, 4, 6, 8, 1, 9 }
difference()
הפונקציה difference() מחזירה קבוצה חדשה שמכילה רכיבים בקבוצה הזו אבל לא בקבוצה שצוינה.
const odds = new Set([1, 3, 5, 7, 9]);
const squares = new Set([1, 4, 9]);
console.log(odds.difference(squares)); // Set(3) { 3, 5, 7 }
symmetricDifference()
הפונקציה symmetricDifference() מחזירה קבוצה חדשה שמכילה רכיבים שנמצאים בקבוצה הזו או בקבוצה שצוינה, אבל לא בשתיהן.
const evens = new Set([2, 4, 6, 8]);
const squares = new Set([1, 4, 9]);
console.log(evens.symmetricDifference(squares)); // Set(5) { 2, 6, 8, 1, 9 }
isSubsetOf()
isSubsetOf() מחזירה ערך בוליאני שמציין אם כל הרכיבים של הקבוצה הזו נמצאים בקבוצה הנתונה.
const fours = new Set([4, 8, 12, 16]);
const evens = new Set([2, 4, 6, 8, 10, 12, 14, 16, 18]);
console.log(fours.isSubsetOf(evens)); // true
isSupersetOf()
isSupersetOf() מחזירה ערך בוליאני שמציין אם כל הרכיבים של הקבוצה הנתונה נמצאים בקבוצה הזו.
const evens = new Set([2, 4, 6, 8, 10, 12, 14, 16, 18]);
const fours = new Set([4, 8, 12, 16]);
console.log(evens.isSupersetOf(fours)); // true
isDisjointFrom()
isDisjointFrom()
הפונקציה מחזירה ערך בוליאני שמציין אם לקבוצה הזו אין רכיבים משותפים עם הקבוצה הנתונה.
const primes = new Set([2, 3, 5, 7, 11, 13, 17, 19]);
const squares = new Set([1, 4, 9, 16]);
console.log(primes.isDisjointFrom(squares)); // true
עדכון הקוד כך שישתמש בשיטות המובנות משפרת את הביצועים ומפחיתה את החוב הטכני.