const arr = [1,2,3];
const newArr = [...arr, '์ถ๊ฐ!']
console.log('newArr',newArr)
๐ ๊ธฐ์กด ๋ฐฐ์ด์ด ๋ณ๊ฒฝ ๋์ง ์๊ณ , ์๋ก์ด ๊ฐ์ฒด๋ฅผ ๋ง๋ค์ด ๊ธฐ์กด ๊ฐ์ฒด์ ๋ถ๋ฌ์ ํ์ฅ ํ๋๊ฒ
๐ spread ์ฐ์ฐ์๋ ๋ฐฐ์ด์ ํต์งธ๋ก ๋ฐ์์ ์ค๋ ๊ฒฝ์ฐ์ ์ฌ์ฉํ๋ค.
...array
์ ํํ๋ก ์ ์ด์ค๋ค!
//๋ฐฐ์ด
let arr1 = [3, 5, 1];
console.log(Math.max(arr1)) //NaN
console.log(Math.max(...arr1)) //5
//๋ฌธ์์ด
let str = "์๋
ํ์ธ์";
console.log([...str]) //['์', '๋
', 'ํ', '์ธ', '์']
๐ ๋ฐฐ์ด ๋ณต์ฌ๋ณธ์ ์์ === ๊ธฐ์กด ๋ฐฐ์ด ์์ : false
let arr = [3, 5, 1];
let arrCopy = [...arr]
console.log(arr === arrCopy); // false
๐ ๊ธฐ์กด ๋ฐฐ์ด์ ์์ ํด๋ ๋ณต์ฌ๋ณธ์ ์ํฅ X
arr.push(4);
console.log(arr); // 1, 2, 3, 4
console.log(arrCopy); // 1, 2, 3
๐ ๊ฐ์ฒด ๋ณต์ฌ๋ณธ์ ํ๋กํผํฐ === ๊ธฐ์กด ๊ฐ์ฒด ํ๋กํผํฐ : true
let obj = { a: 1, b: 2, c: 3 };
let objCopy = { ...obj };
console.log(JSON.stringify(obj) === JSON.stringify(objCopy)); // true
๐ obj === objCopy : false
console.log(obj === objCopy) //์ฐธ์กฐ๊ฐ ๋ค๋ฆ
๐ ๊ธฐ์กด ๊ฐ์ฒด๋ฅผ ์์ ํด๋ ๋ณต์ฌ๋ณธ์ ์ํฅ X
obj.d = 4;
console.log(JSON.stringify(obj)); // {"a":1,"b":2,"c":3,"d":4}
console.log(JSON.stringify(objCopy)); // {"a":1,"b":2,"c":3}