[KUIT] 3์ฃผ์ฐจ ์›Œํฌ๋ถ ๋ณด์ถฉ(JavaScript)
ยท
KUIT
์ด ๊ธ€์€ KUIT Web ๋ถ€์›๋ถ„๋“ค์„ ๋Œ€์ƒ์œผ๋กœ ์“ด ๊ธ€์ž…๋‹ˆ๋‹ค. ํ”„๋กœํ† ํƒ€์ž… ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐ์ฒด๋Š” Prototype์ด๋ผ๋Š” ๋‚ด๋ถ€ ํ”„๋กœํผํ‹ฐ๊ฐ€ ์กด์žฌํ•œ๋‹ค. ๊ฑฐ์˜ ๋ชจ๋“  ๊ฐ์ฒด๊ฐ€ ์ƒ์„ฑ ์‹œ์ ์— ์ด ํ”„๋กœํผํ‹ฐ์— null์ด ์•„๋‹Œ ๊ฐ’์ด ํ• ๋‹น๋œ๋‹ค. ๊ฐ์ฒด ๋‚ด๋ถ€์— ์—†๋Š” ํ”„๋กœํผํ‹ฐ๋ฅผ ํ˜ธ์ถœํ•˜๊ฒŒ ๋˜๋ฉด? โ†’ ํ•ด๋‹น ํ”„๋กœํผํ‹ฐ๋ฅผ ์ฐพ์ง€ ๋ชปํ•˜๋ฉด ๋ฐ”๋กœ [[Prototype]]๋งํฌ๋ฅผ ๋”ฐ๋ผ๊ฐ€ ํ”„๋กœํผํ‹ฐ๋ฅผ ํƒ์ƒ‰ํ•œ๋‹ค. ๋ชจ๋“  ์ผ๋ฐ˜ ๊ฐ์ฒด์˜ ์ตœ์ƒ์œ„ ํ”„๋กœํ† ํƒ€์ž… ์—ฐ์‡„๋Š” ๋‚ด์žฅ Object.prototype์ด๊ณ  ์ด ์ง€์ ์—์„œ๋„ ์ฐพ์ง€ ๋ชปํ•˜๋ฉด ํƒ์ƒ‰์ด ์ข…๋ฃŒ๋œ๋‹ค. (undefined ๋ฐ˜ํ™˜) ๋‘ ๊ฐ์ฒด๋ฅผ ์„œ๋กœ ์—ฐ๊ฒฐ์ง“๋Š” ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ๋ฐฉ๋ฒ•์€ ํ•จ์ˆ˜ ํ˜ธ์ถœ ์‹œ newํ‚ค์›Œ๋“œ๋ฅผ ์•ž์— ๋ถ™์ด๋Š” ๊ฒƒ์ด๋‹ค. newํ‚ค์›Œ๋“œ๋Š” ์ผ๋ฐ˜ ํ•จ์ˆ˜ ํ˜ธ์ถœ + "๊ฐ์ฒด" ์ƒ์„ฑ์ด๋ผ๋Š” ์ž”์—…์„ ๋” ๋ถ€๊ณผํ•˜๋Š” ์ง€์‹œ์ž์ด๋‹ค. const f = ..