תאריך פרסום: 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
עדכון הקוד כך שישתמש בשיטות המובנות משפרת את הביצועים ומפחיתה את החוב הטכני.