JS์˜ ๐Ÿ“ฆ Autoboxing์ด ๋ฌด์—‡์ธ์ง€ ์•„์‹ญ๋‹ˆ๊นŒ?

2492 ๋‹จ์–ด tutorialwebdevbeginnersjavascript
"๊ธฐ๋ณธ ์œ ํ˜•์ด๋ž€ ๋ฌด์—‡์ด๋ฉฐ ์–ด๋–ป๊ฒŒ ์ •์˜๋ฉ๋‹ˆ๊นŒ?"๋ผ๋Š” ์งˆ๋ฌธ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

๊ธฐ๋ณธ ํ˜•์‹์—๋Š” ๋ฉ”์„œ๋“œ๋‚˜ ์†์„ฑ์ด ์—†์Šต๋‹ˆ๋‹ค.

JS์˜ ๋ช‡ ๊ฐ€์ง€ ๊ธฐ๋ณธ ์œ ํ˜•์„ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ˆซ์ž์™€ ๋ฌธ์ž์—ด์„ ์‚ฌ์šฉํ•ด ๋ด…์‹œ๋‹ค.

const name = "Doggo"
const age = 7

console.log(typeof name) // string
console.log(typeof age) // number

์ด๋ฆ„์€ ๊ธฐ๋ณธ ์œ ํ˜• ๋ฌธ์ž์—ด์„ ๊ฐ€์ง€๋ฉฐ ์—ฐ๋ น์€ ์ˆซ์ž์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ธฐ๋ณธ ์œ ํ˜•์—๋Š” ์†์„ฑ์ด๋‚˜ ๋ฉ”์„œ๋“œ๊ฐ€ ์—†์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ์„ ํ™•์ธํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

console.log(name.length) // 5
console.log(age.toString()) // "7"

์ด๊ฒƒ์ด ์ž‘๋™ํ•˜๊ณ  ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ๊ธฐ๋ณธ ์œ ํ˜•์ด ๋ชจ๋‘ ์‹ค์ œ๋กœ ๊ฐ์ฒด์ธ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค! ํ•˜์ง€๋งŒ ๊ทธ๋ ‡์ง€ ์•Š์Šต๋‹ˆ๋‹ค! ์˜คํ† ๋ฐ•์‹ฑ ๋•Œ๋ฌธ์— ๊ฐ์ฒด์ฒ˜๋Ÿผ ํ–‰๋™ํ•  ๋ฟ์ž…๋‹ˆ๋‹ค. ํ”„๋ฆฌ๋ฏธํ‹ฐ๋ธŒ์˜ ๋ฉ”์„œ๋“œ๋‚˜ ์†์„ฑ์— ์•ก์„ธ์Šคํ•˜๋ ค๊ณ  ํ•  ๋•Œ๋งˆ๋‹ค ํ•ด๋‹น ํ”„๋ฆฌ๋ฏธํ‹ฐ๋ธŒ๋Š” ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘๋ฉ๋‹ˆ๋‹ค. ์˜คํ† ๋ณต์‹ฑ์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. Autoboxing์€ ํ”„๋ฆฌ๋ฏธํ‹ฐ๋ธŒ๋ฅผ ๊ด€๋ จ ๋‚ด์žฅ ํ”„๋กœํ† ํƒ€์ž… ๊ฐ์ฒด์— ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ์˜ ๊ฒฝ์šฐ์—๋Š” String.prototype ๋ฐ Number.prototype ์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ํ”„๋กœํ† ํƒ€์ž… ๋ฉ”์„œ๋“œ ๋ฐ ์†์„ฑ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ์ด๊ฒƒ์€ ์ˆซ์ž ํ”„๋กœํ† ํƒ€์ž…์ž…๋‹ˆ๋‹ค.




์›น ๊ฐœ๋ฐœ์„ ๋” ์ž˜ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๊นŒ?
๐Ÿš€๐Ÿš€๐Ÿš€subscribe to the Tutorial Tuesday โœ‰๏ธnewsletter

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