๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
์‹œ๋„/Code-States

[D+33] ์†”๋กœ์œ„ํฌ 3์ผ์ฐจ

by ๐Ÿ‡๋ฐ•๋ด‰๋ด‰๐Ÿ‡ 2020. 10. 9.

 

D+33

-  ์†”๋กœ ์œ„ํฌ 3์ผ ์ฐจ -

( ์ฒซ ๋ฒˆ์งธ ๊ณผ์ œ ๋ณต์Šต )

 


 

 

๋“œ๋””์–ด ์–ด์ œ ๋ฌธ์ œ ํ‘ธ๋Š” ๊ณผ์ •์„ ๋งˆ์น˜๊ณ  ๋“œ๋””์–ด ์˜ค๋Š˜

์—ฌํƒœ๊นŒ์ง€ ์ œ์ถœํ•ด์™”๋˜ ๊ณผ์ œ๋“ค์„ ํ•œ๋ฒˆ ๋” ํ’€์–ด๋ณด๋Š” ์‹œ๊ฐ„์„ ๊ฐ€์ง€๋Š” ๋‚ ์ด ์™”๋‹ค.

 

์•„๋งˆ ๊ณผ์ œ๋ฅผ ์ œ์ถœํ•˜๊ธฐ์œ„ํ•ด ๋ฌธ์ œ๋ฅผ ๊ผผ๊ผผํžˆ ํ™•์ธํ•œ ๋‹ค๋ฅธ ๋ถ„๋“ค์€ ์–ด์ฉŒ๋ฉด ๋‹ค์‹œ ํ’€์–ด๋ณด์ง€ ์•Š๊ณ 

๊ฒ€ํ† ํ•˜๋“ฏ์ด ๊ณต๋ถ€ํ•˜์…”๋„ ์ž˜ ํ•ด๋‚ด์‹œ๊ฒ ์ง€๋งŒ

๋‚˜๋Š” ๊ณผ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š”๋ฐ ๋งŽ์€ ์–ด๋ ค์›€๊ณผ ์ขŒ์ ˆ์„ ๊ฒช์—ˆ๊ธฐ ๋•Œ๋ฌธ์—

๋น„๋ก ๊ฝค ๋งŽ์€ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฌ๋”๋ผ๋„ ํ™•์‹คํ•˜๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋‹ค์‹œ ์ƒˆ ๋„ํ™”์ง€๋ฅผ ๊บผ๋‚ด๋“ฏ

๋ฌธ์ œ๋ฅผ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋‹ค์‹œ ํ’€๊ธฐ๋กœ ๊ฒฐ์‹ฌํ–ˆ๋‹ค.

 

 

์ผ๋‹จ ๊ฐ€์žฅ ์ฒ˜์Œ์— ํ–ˆ๋˜ ๊ณผ์ œ๋Š” ๋ณต์Šตํ•ด๋ณธ ๊ฒฐ๊ณผ ๋‹คํ–‰ํžˆ๋„

ํฐ ์–ด๋ ค์›€ ์—†์ด ํ•ด๋‚ผ ์ˆ˜ ์žˆ์—ˆ๋‹ค.

 

๋‚ด ๊ธฐ์–ต์œผ๋ก  ์ฒ˜์Œ์— ์ด ๊ณผ์ œ๋ฅผ ํ’€์—ˆ์„ ๋•Œ์—๋„

๊ธฐ๋ณธ์ ์ธ ๊ฐœ๋…์— ๋Œ€ํ•ด์„œ๋Š” ํฐ ์–ด๋ ค์›€ ์—†์ด ํ•ด๊ฒฐํ•ด ๋‚˜๊ฐ”๋˜ ๊ธฐ์–ต์ด ์žˆ๊ณ ,

๋‚ด๊ฐ€ ๋ชฐ๋ž๋˜ ๊ฐœ๋…๋“ค์€ ํ•ด๋‹น ๋ฌธ์ œ์—์„œ ๋‚˜์™”๋˜ ์ƒˆ๋กœ์šด ๊ฐœ๋…๋“ค์ด์—ˆ๊ธฐ์—

์ƒ์„ธํ•œ ํ’€์ด๊ฐ€ ๋‚˜์™€์žˆ์–ด์„œ ํฐ ๊ณ ๋ฏผ ์—†์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด ๋‚˜๊ฐ”๋˜ ๊ฒƒ ๊ฐ™๋‹ค.

 

๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฒˆ์— ๋‹ค์‹œ ๋ฌธ์ œ๋ฅผ ํ’€์–ด๋ณธ ๊ฒฐ๊ณผ

๊ธฐ๋ณธ๊ฐœ๋…์€ ์ „๊ณผ ๋น„์Šทํ•˜๊ฒŒ ์–ด๋ ค์›€ ์—†์ด ํ•ด๊ฒฐํ•ด ๋‚˜๊ฐ”์œผ๋ฉฐ,

์ƒˆ๋กœ์šด ๊ฐœ๋…๋“ค์— ๋Œ€ํ•ด์„œ๋Š” ์ง€๋‚œ ๊ธฐ๊ฐ„ ๋™์•ˆ ๊พธ์ค€ํžˆ ํ•ด๋‹น ๊ฐœ๋…๋“ค์„ ๋ฐ˜๋ณต์ ์œผ๋กœ ์‚ฌ์šฉํ•ด์™”๊ธฐ ๋•Œ๋ฌธ์—

์ด๋ฒˆ์— ํ’€์—ˆ์„ ๋•Œ์—๋Š” ํฐ ๋ฌธ์ œ์—†์ด ํ•ด๊ฒฐํ•ด ๋‚˜๊ฐˆ ์ˆ˜ ์žˆ์—ˆ๋‹ค.

 

์ด๋ฒˆ ํŒŒํŠธ๋Š” ๋‚ด๊ฐ€ ์ฒ˜์Œ์— ํ’€ ๋•Œ์—๋„ ํฐ ๋ฌธ์ œ๊ฐ€ ์—†์—ˆ๊ธฐ์—

์ˆœ์กฐ๋กญ๊ฒŒ ์‹œ์ž‘์„ ํ–ˆ์ง€๋งŒ

๋‹ค์Œ ํŒŒํŠธ๋ถ€ํ„ฐ๋Š” ๋”์šฑ ํž˜๋‚ด์„œ ์—ด์‹ฌํžˆ ํ•ด์•ผ ํ•  ๊ฒƒ์ด๋‹ค.

 

ํŒŒ์ดํŒ…...

 

 


 

 

์ด์   ์•Œ๊ฒŒ ๋˜์—ˆ์ง€๋งŒ ๊ทธ๋ž˜๋„ ํ˜น์‹œ ๋ชจ๋ฅด๋‹ˆ...

 

 

๋ฐฐ์—ด๊ณผ ๊ฐ์ฒด์˜ ๋ณต์‚ฌ

 

 

1. arr1๊ณผ arr2๋Š” ๊ฐ™์„๊นŒ?

let arr1 = [1, 2, 3];
let arr2 = [1, 2, 3];

arr1๊ณผ arr2๋Š” ๊ฐ์ž ๋ฐฐ์—ด ์•ˆ์— ๋‹ด๊ฒจ์žˆ๋Š” ์š”์†Œ๋“ค์ด ๊ฐ™๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ™๋‹ค๊ณ  ์ƒ๊ฐํ•  ์ˆ˜๋Š” ์žˆ๊ฒ ์ง€๋งŒ ์‚ฌ์‹ค์€ ๊ฐ™์ง€ ์•Š๋‹ค.

 

์™œ๋ƒํ•˜๋ฉด arr1๊ณผ arr2๊ฐ€ ๊ฐ™๋ƒ๊ณ  ๋ฌผ์–ด๋ณด๋Š” ๊ฒƒ์€ ๊ฐ ๋ฐฐ์—ด๋“ค์ด ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๊ฐ’๋“ค์ด ๊ฐ™๋ƒ๊ณ  ๋ฌผ์–ด๋ณด๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ

๊ฐ ๋ฐฐ์—ด์ด ๋‹ด๊ฒจ์žˆ๋Š” ์ฃผ์†Œ๊ฐ€ ๊ฐ™๋ƒ๊ณ  ๋ฌผ์–ด๋ณด๋Š” ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— arr1๊ณผ arr2๊ณผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์ฃผ์†Œ๋Š” ๊ฐ์ž ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์—

๊ฐ™๋‹ค๊ณ  ๋ณผ ์ˆ˜ ์—†๋‹ค.

 

 

2. arr ๊ฐ’์˜ ๋ณ€๋™

 

๋ฐฐ์—ด arr์™€ ๋ฐฐ์—ด arr๋ฅผ ๋‹ด์€ copy1์ด ์žˆ๋‹ค.

 

์ด๋•Œ ๋งŒ์•ฝ copy1์— ์ƒˆ๋กœ์šด ๊ฐ’ 6์„ ๋ฐฐ์—ด ์•ˆ์— ๋„ฃ์—ˆ์„ ๊ฒฝ์šฐ์—

arr์™€ copy1์„ ์ฝ˜์†” ๋กœ๊ทธ๋กœ ์ฐ์—ˆ์„ ๊ฒฝ์šฐ ์–ด๋– ํ•œ ๋ชจ์Šต์ด ๋‚˜์˜ฌ๊นŒ?

let arr = [1, 2, 3, 4, 5];
let copy1 = arr;

copy1.push(6);

console.log(arr); // ? --> arr = [1, 2, 3, 4, 5, 6]
console.log(copy1); // ? --> copy1 = [1, 2, 3, 4, 5, 6]

๊ฒฐ๊ณผ๋Š” ๋‘˜ ๋‹ค ๋˜‘๊ฐ™์ด ์ƒˆ ๊ฐ’์ด ๋“ค์–ด๊ฐ„ ์ƒํƒœ์˜ ๋ชจ์Šต์ด ๋‚˜ํƒ€๋‚˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

 

copy1์— arr๋ฅผ ๋„ฃ์€ ๊ฒƒ์€ arr์˜ ๋ฐฐ์—ด ์•ˆ์— ๋“ค์–ด๊ฐ€ ์žˆ๋Š” ๊ฐ’์„ ๋‹ด๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ

arr์— ๋‹ด๊ธด ๋ฐฐ์—ด์ด ๋‹ด๊ธด ์ฃผ์†Œ๋ฅผ ๋‹ด์•˜๊ธฐ ๋•Œ๋ฌธ์— ๋‚ด๊ฐ€ copy1์—์„œ ์ƒˆ๋กœ์šด ๊ฐ’์„ ์ถ”๊ฐ€ํ•˜๋ฉด

์ฃผ์†Œ๊ฐ’์•ˆ์— ๋‹ด๊ธด ๋ฐฐ์—ด์ด ๋ณ€๋™๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ฃผ์†Œ ๊ฐ’์ด ๊ฐ™์€ arr์™€ copy1์€ ๊ฐ™์€ ๋ฐฐ์—ด์„ ๋‚ด๋ณด๋‚ธ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค.

 

 

3. ๋ฐฐ์—ด์˜ ์ฃผ์†Œ๊ฐ’์ด ์•„๋‹Œ ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ๋ณต์‚ฌํ•˜๋Š” ๋ฐฉ๋ฒ•

 

๋ฐฐ์—ด์˜ ์ฃผ์†Œ๊ฐ’์ด ์•„๋‹Œ ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ๋ณต์‚ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์•„์ฃผ ๊ฐ„๋‹จํ•˜๋‹ค.

 

'='์„ ์จ์„œ ๋„ฃ์€ ๊ฒƒ์ด ์•„๋‹Œ slice๋ฅผ ์‚ฌ์šฉํ•ด ๋งˆ์น˜ ์กฐ๊ฐ์„ ์ž˜๋ผ์„œ ๋‚ด ๊ฒƒ์— ๋ถ™์ด๋“ฏ์ด ์ฃผ์†Œ ๊ฐ’์ด ์•„๋‹Œ ๊ฐ’์„ ๋ถˆ๋Ÿฌ์˜ฌ ์ˆ˜ ์žˆ๋‹ค.

 

 

๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€