Menu
Coddy logo textTech

Spread ו-Rest

שיעור 5 מתוך 9 בקורס החלקים המאתגרים ב-JavaScript מודרני (ES6+) של Coddy.

ב-Javascript, אפשר להשתמש באופרטור יחיד <strong>...</strong> (שלוש נקודות) לשני סוגי פעולות!

פריסה

אפשר להשתמש ב-<strong>...</strong> כדי להעביר איברים של מערך, כפרמטרים נפרדים לפונקציה

let array1 = [1,2,3];
Math.max(...array1); // בדיוק כמו Math.max(1,2,3)

משתמשים בו גם כדי להעתיק מערך למערך אחר, או להעתיק מאפיינים של אובייקט מילולי אחד לאובייקט מילולי אחר.

let arr1 = [1,2,3];
let arr2 = [6,7,8];
let final = [...arr1, 4, 5, ...arr2]; // [1,2,3,4,5,6,7,8]

let obj1 = {name:"Shubham"};
let obj2= {work: "Software Development"};
let finalObj = {...name,...work}; // {name:"Shubham",work:"Software Development"}

שארית

אפשר להשתמש ב-<strong>...</strong> כדי לאסוף את כל הפרמטרים הנותרים (rest) של פונקציה למערך

function sum(a,b,...rest){
	console.log("rest parameters : ", rest); 
}

sum(1,2,3,4,5,6) //פרמטרי rest: [3,4,5,6]

פרמטרים מסוג rest צריכים תמיד להיות הפרמטרים האחרונים. function sum(a, ...rest , b){ } לא יעבוד.

challenge icon

אתגר

קל

כתבו פונקציה להעתקת מאפיינים גם מ־obj1 וגם מ־obj2 ולהחזרת האובייקט החדש שמכיל את המאפיינים של שני האובייקטים.

נסו בעצמכם

function combineObjects(obj1, obj2) {
    // כתבו כאן קוד
}

כל השיעורים ביחידה החלקים המאתגרים ב-JavaScript מודרני (ES6+)

תרגלו בעצמכם: קומפיילר JavaScript אונליין