script - spread ์—ฐ์‚ฐ์ž

733 ๋‹จ์–ด JavaScriptJavaScript

javascript์—์„œ ์Šคํ”„๋ ˆ๋“œ์—ฐ์‚ฐ์ž๋ฅผ ์•ˆ๋‹ค๋ฉด ๋ฐฐ์—ด์„ ์‚ฌ์šฉํ• ๋•Œ ๊ฐ„ํŽธํ•˜๊ฒŒ ์‚ฌ์šฉ ํ•  ์ˆ˜ ์žˆ์–ด์„œ ์ข‹๋‹ค.

1.์ •์˜

์Šคํ”„๋ ˆ๋“œ ์—ฐ์‚ฐ์ž๋Š” ์ž์‹ ์ด ์›ํ•˜๋Š” ๊ฐ์ฒด๋ฅผ ๋ณต์‚ฌํ•ด์„œ ๋„ฃ๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.
์‚ฌ์šฉ๋ฐฉ๋ฒ•์€ ์•ž์— ... ์„ ๋ถ™์ด๋ฉด ๋œ๋‹ค.

2. ์ฝ”๋“œ

์–ด๋–ป๊ฒŒ ๋ณต์‚ฌํ•ด์„œ ๋„ฃ๋Š”์ง€๋Š” ์ง์ ‘ ์ฝ”๋“œ๋ฅผ ํ™•์ธํ•˜๋ฉด์„œ ๋ณด๋ฉด ์‰ฝ๊ฒŒ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋‹ค.

const student1 ={
    name: '์ด'
};

const student2 = {
    ...student1,
    name: '๊น€',
    age: 10
};

const student3 = {
	...student2
    name: '๋ฐ•',
    age:20,
    hobby: 'game'
};

console.log(student1);
console.log(student2);
console.log(student3);

์œ„์˜ ์ฝ”๋“œ๋ฅผ ํ•ด์„์„ ํ•ด์„ํ•˜์ž๋ฉด
student2์—์„œ ...student1๋ฅผ ์ž‘์„ฑํ•˜๋ฏ€๋กœ์จ ์Šคํ”„๋ ˆ๋“œ ์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•˜์˜€๋‹ค.
๊ทธ๋ž˜์„œ ์ถœ๋ ฅ์„ ํ•˜์˜€์„ ๋•Œ student1 ๊ฐ์ฒด๋“ค๊ณผ ํ•จ๊ป˜ ์ถœ๋ ฅ์ด ๋œ๋‹ค.

student3๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ...student2์„ ์ผ๊ธฐ๋•Œ๋ฌธ์— ์ถœ๋ ฅ์„ ํ• ๋•Œ student2 ๊ฐ์ฒด๋“ค๋„ ํ•จ๊ป˜ ์ถœ๋ ฅ์ด ๋œ๋‹ค.

์ข‹์€ ์›นํŽ˜์ด์ง€ ์ฆ๊ฒจ์ฐพ๊ธฐ