๋ชฉ๋กdeepdive (12)

๐Ÿค ์€์ง€log ๐Ÿค

ํ•จ์ˆ˜์™€ ์ผ๊ธ‰ ๊ฐ์ฒด

๐ŸŽฃ ์ผ๊ธ‰ ๊ฐ์ฒด ๋ฌด๋ช…์˜ ๋ฆฌํ„ฐ๋Ÿด๋กœ ์ƒ์„ฑํ• ์ˆ˜ ์žˆ๋‹ค. ์ฆ‰, ๋Ÿฐํƒ€์ž„์— ์ƒ์„ฑ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ๋ณ€์ˆ˜๋‚˜ ์ž๋ฃŒ๊ตฌ์กฐ(๊ฐ์ฒด,๋ฐฐ์—ด ๋“ฑ)์— ์ €์žฅํ• ์ˆ˜ ์žˆ๋‹ค. ํ•จ์ˆ˜์˜ ๋งค๊ฐœ๋ณ€์ˆ˜์— ์ „๋‹ฌํ• ์ˆ˜ ์žˆ๋‹ค. ํ•จ์ˆ˜์˜ ๋ฐ˜ํ™˜๊ฐ’์œผ๋กœ ์‚ฌ์šฉํ• ์ˆ˜ ์žˆ๋‹ค. ํ•จ์ˆ˜๋Š” ๊ฐ’์„ ์‚ฌ์šฉํ• ์ˆ˜ ์žˆ๋Š” ๊ณณ(๋ณ€์ˆ˜ ํ• ๋‹น๋ฌธ, ๊ฐ์ฒด์˜ ํ”„๋กœํผํ‹ฐ ๊ฐ’, ๋ฐฐ์—ด์˜ ์š”์†Œ, ํ•จ์ˆ˜ ํ˜ธ์ถœ์˜ ์ธ์ˆ˜, ํ•จ์ˆ˜ ๋ฐ˜ํ™˜๋ฌธ)์ด๋ผ๋ฉด ์–ด๋””์„œ๋“ ์ง€ ๋ฆฌํ„ฐ๋Ÿด๋กœ ์ •์˜ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋Ÿฐํƒ€์ž„์— ํ•จ์ˆ˜ ๊ฐ์ฒด๋กœ ํ‰๊ฐ€๋œ๋‹ค. ์ผ๊ธ‰ ๊ฐ์ฒด๋กœ์„œ ํ•จ์ˆ˜๊ฐ€ ๊ฐ€์ง€๋Š” ๊ฐ€์žฅ ํฐ ํŠน์ง•์€ ์ผ๋ฐ˜ ๊ฐ์ฒด์™€ ๊ฐ™์ด ํ•จ์ˆ˜์˜ ๋งค๊ฐœ๋ณ€์ˆ˜์— ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํ•จ์ˆ˜์˜ ๋ฐ˜ํ™˜๊ฐ’์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ํ•จ์ˆ˜๋Š” ๊ฐ์ฒด ์ด์ง€๋งŒ ์ผ๋ฐ˜ ๊ฐ์ฒด์™€๋Š” ์ฐจ์ด๊ฐ€ ์žˆ๋‹ค. ์ผ๋ฐ˜ ๊ฐ์ฒด๋Š” ํ˜ธ์ถœํ• ์ˆ˜ ์—†์ง€๋งŒ ํ•จ์ˆ˜ ๊ฐ์ฒด๋Š” ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํ•จ์ˆ˜ ๊ฐ์ฒด๋Š” ์ผ๋ฐ˜ ๊ฐ์ฒด์—๋Š” ์—†๋Š” ํ•จ์ˆ˜ ๊ณ ์œ ์˜ ํ”„๋กœํผํ‹ฐ๋ฅผ ์†Œ์œ ํ•œ๋‹ค...

์ƒ์„ฑ์ž ํ•จ์ˆ˜์— ์˜ํ•œ ๊ฐ์ฒด ์ƒ์„ฑ

๐ŸŽฃ Object ์ƒ์„ฑ์ž ํ•จ์ˆ˜ new์—ฐ์‚ฐ์ž์™€ ํ•จ๊ป˜ Object ์ƒ์„ฑ์ž ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜๋ฉด ๋นˆ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ๋นˆ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•œ ์ดํ›„ ํ”„๋กœํผํ‹ฐ ๋˜๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ๊ฐ์ฒด๋ฅผ ์™„์„ฑํ• ์ˆ˜ ์žˆ๋‹ค. ์ƒ์„ฑ์ž ํ•จ์ˆ˜๋ž€ new ์—ฐ์‚ฐ์ž์™€ ํ•จ๊ป˜ ํ˜ธ์ถœํ•˜์—ฌ ๊ฐ์ฒด(์ธ์Šคํ„ด์Šค)๋ฅผ ์ƒ์„ฑํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ๋งํ•œ๋‹ค. ์ƒ์„ฑ์ž ํ•จ์ˆ˜์— ์˜ํ•ด ์ƒ์„ฑ๋œ ๊ฐ์ฒด๋ฅผ ์ธ์Šคํ„ด์Šค๋ผ ํ•œ๋‹ค. ๐ŸŽฃ ์ƒ์„ฑ์ž ํ•จ์ˆ˜ ๊ฐ์ฒด ๋ฆฌํ„ฐ๋Ÿด์— ์˜ํ•œ ๊ฐ์ฒด ์ƒ์„ฑ ๋ฐฉ์‹์˜ ๋ฌธ์ œ์  ๊ฐ์ฒด ๋ฆฌํ„ฐ๋Ÿด์— ์˜ํ•œ ๊ฐ์ฒด ์ƒ์„ฑ ๋ฐฉ์‹์€ ์ง๊ด€์ ์ด๊ณ  ๊ฐ„ํŽธํ•˜๋‹ค. ํ•˜์ง€๋งŒ ๊ฐ์ฒด ๋ฆฌํ„ฐ๋Ÿด์— ์˜ํ•œ ๊ฐ์ฒด ์ƒ์„ฑ ๋ฐฉ์‹์€ ๋‹จ ํ•˜๋‚˜์˜ ๊ฐ์ฒด๋งŒ ์ƒ์„ฑํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ๋™์ผํ•œ ํ”„๋กœํผํ‹ฐ๋ฅผ ๊ฐ–๋Š” ๊ฐ์ฒด๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ ์ƒ์„ฑํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ๋งค๋ฒˆ ๊ฐ™์€ ํ”„๋กœํผํ‹ฐ๋ฅผ ๊ธฐ์ˆ ํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋น„ํšจ์œจ์  ์ด๋‹ค. ๊ฐ์ฒด ๋ฆฌํ„ฐ๋Ÿด์— ์˜ํ•ด ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒฝ์šฐ ํ”„๋กœํผํ‹ฐ ๊ตฌ์กฐ๊ฐ€ ๋™์ผ..

ํ”„๋กœํผํ‹ฐ ์–ดํŠธ๋ฆฌ๋ทฐํŠธ

๐ŸŽฃ ๋‚ด๋ถ€ ์Šฌ๋กฏ๊ณผ ๋‚ด๋ถ€ ๋ฉ”์„œ๋“œ ๋Š” ์ž๋ฐ”์ŠคํŠธ๋ฆฝํŠธ ์—”์ง„์˜ ๊ตฌํ˜„ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์„ค๋ช…ํ•˜๊ธฐ ์œ„ํ•ด ECMAScript ์‚ฌ์–‘์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์˜์‚ฌ ํ”„๋กœํผํ‹ฐ์™€ ์˜์‚ฌ ๋ฉ”์„œ๋“œ ๋‹ค. ์ด์ค‘ ๋Œ€๊ด„ํ˜ธ [[...]]๋กœ ๊ฐ์‹ผ ์ด๋ฆ„๋“ค์ด ๋‚ด๋ถ€ ์Šฌ๋กฏ๊ณผ ๋‚ด๋ถ€ ๋ฉ”์„œ๋“œ๋‹ค. ๋‚ด๋ถ€ ์Šฌ๋กฏ๊ณผ ๋‚ด๋ถ€ ๋ฉ”์„œ๋“œ๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„์˜ ๋‚ด๋ถ€ ๋กœ์ง์ด๋ฏ€๋กœ ์›์น™์ ์œผ๋กœ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ๋‚ด๋ถ€ ์Šฌ๋กฏ๊ณผ ๋‚ด๋ถ€ ๋ฉ”์„œ๋“œ์— ์ง์ ‘์ ์œผ๋กœ ์ ‘๊ทผํ•˜๊ฑฐ๋‚˜ ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•˜์ง€ ์•Š๋Š”๋‹ค. ๐ŸŽฃ ํ”„๋กœํผํ‹ฐ ์–ดํŠธ๋ฆฌ๋ทฐํŠธ์™€ ๋””์Šคํฌ๋ฆฝํ„ฐ ๊ฐ์ฒด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„์€ ํ”„๋กœํผํ‹ฐ๋ฅผ ์ƒ์„ฑํ• ๋•Œ ํ”„๋กœํผํ‹ฐ์˜ ์ƒํƒœ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”„๋กœํผํ‹ฐ ์–ดํŠธ๋ฆฌ๋ทฐํŠธ๋ฅผ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์ž๋™ ์ •์˜ ํ•œ๋‹ค. (ํ”„๋กœํผํ‹ฐ์˜ ์ƒํƒœ๋ž€ ํ”„๋กœํผํ‹ฐ์˜ ๊ฐ’, ๊ฐ’์˜ ๊ฐฑ์‹  ๊ฐ€๋Šฅ ์—ฌ๋ถ€, ์—ด๊ฑฐ ๊ฐ€๋Šฅ ์—ฌ๋ถ€, ์žฌ์ •์˜ ๊ฐ€๋Šฅ ์—ฌ๋ถ€๋ฅผ ๋งํ•œ๋‹ค.) ํ”„๋กœํผํ‹ฐ ์–ดํŠธ๋ฆฌ๋ทฐํŠธ๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„์ด ๊ด€์ด..

์Šค์ฝ”ํ”„ (Scope)

๋ชจ๋“  ์‹๋ณ„์ž( ๋ณ€์ˆ˜์ด๋ฆ„, ํ•จ์ˆ˜์ด๋ฆ„, ํด๋ž˜์Šค ์ด๋ฆ„ ๋“ฑ)๋Š” ์ž์‹ ์ด ์„ ์–ธ๋œ ์œ„์น˜์— ์˜ํ•ด ๋‹ค๋ฅธ ์ฝ”๋“œ๊ฐ€ ์‹๋ณ„์ž ์ž์‹ ์„ ์ฐธ์กฐํ• ์ˆ˜ ์žˆ๋Š” ์œ ํšจ๋ฒ”์œ„๊ฐ€ ๊ฒฐ์ • ๋œ๋‹ค. ์Šค์ฝ”ํ”„๋Š” ์‹๋ณ„์ž๊ฐ€ ์œ ํšจํ•œ ๋ฒ”์œ„๋ฅผ ๋งํ•œ๋‹ค. ์‹๋ณ„์ž๋Š” ์–ด๋–ค ๊ฐ’์„ ๊ตฌ๋ณ„ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•˜๋ฏ€๋กœ ์œ ์ผ ํ•ด์•ผ ํ•œ๋‹ค. ์ „์—ญ๊ณผ ์ „์—ญ ์Šค์ฝ”ํ”„ ( Global Scope ) ์ „์—ญ์ด๋ž€ ์ฝ”๋“œ์˜ ๊ฐ€์žฅ ๋ฐ”๊นฅ ์˜์—ญ์„ ๋งํ•˜๊ณ  ์ „์—ญ ์Šค์ฝ”ํ”„๋ฅผ ๋งŒ๋“ ๋‹ค ์ „์—ญ๋ณ€์ˆ˜๋Š” ์–ด๋””์„œ๋“ ์ง€ ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ๋‹ค. ์ง€์—ญ๊ณผ ์ง€์—ญ ์Šค์ฝ”ํ”„ ( Local Scope ) ์ง€์—ญ์ด๋ž€ ํ•จ์ˆ˜ ๋ชธ์ฒด ๋‚ด๋ถ€๋ฅผ ๋งํ•˜๊ณ  ์ง€์—ญ ์Šค์ฝ”ํ”„๋ฅผ ๋งŒ๋“ ๋‹ค ์ง€์—ญ๋ณ€์ˆ˜๋Š” ์ž์‹ ์˜ ์ง€์—ญ ์Šค์ฝ”ํ”„์™€ ํ•˜์œ„ ์ง€์—ญ ์Šค์ฝ”ํ”„์—์„œ ์œ ํšจ ํ•˜๋‹ค. โญ๏ธ ์•ˆ์—์„œ๋Š” ๋ฐ–์„ ๋ณผ ์ˆ˜ ์žˆ์ง€๋งŒ ๋ฐ–์—์„œ๋Š” ์•ˆ์„ ๋ณผ ์ˆ˜ ์—†๊ณ  ์ ‘๊ทผ์ด ์•ˆ๋œ๋‹ค. ๐Ÿ› ์ „์—ญ ๋ณ€์ˆ˜์˜ ๋ฌธ์ œ์  ์ „์—ญ๋ณ€์ˆ˜์˜ ๋ฌด๋ถ„๋ณ„ํ•œ ์‚ฌ์šฉ์€ ์œ„ํ—˜ํ•˜๋‹ค. ์ „์—ญ..

ํ•จ์ˆ˜

ํ•จ์ˆ˜๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ํ•ต์‹ฌ ๊ฐœ๋…์ด๋ฉฐ, ๋˜ ๋‹ค๋ฅธ ์ค‘์š”ํ•œ ํ•ต์‹ฌ ๊ฐœ๋…๋“ค( ์Šค์ฝ”ํ”„, ์‹คํ–‰ ์ปจํ…์ŠคํŠธ, ํด๋กœ์ €, ์ƒ์„ฑ์ž ํ•จ์ˆ˜์— ์˜ํ•œ ๊ฐ์ฒด ์ƒ์„ฑ, ๋ฉ”์„œ๋“œ, this, ํ”„๋กœํ† ํƒ€์ž…, ๋ชจ๋“ˆํ™” ๋“ฑ)๊ณผ ๊นŠ์€ ๊ด€๋ จ์ด ์žˆ๋‹ค. ํ•จ์ˆ˜๋Š” ๋‹ค๋ฅธ ๋ณ€์ˆ˜์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋ณ€์ˆ˜์— ํ• ๋‹น์ด ๋˜๊ณ  ํ•จ์ˆ˜์˜ ๋งค๊ฐœ ๋ณ€์ˆ˜๋กœ ์ „๋‹ฌ์ด ๋˜๋ฉฐ ๋ฆฌํ„ด๊ฐ’์œผ๋กœ๋„ ๋ฆฌํ„ด์ด ๋œ๋‹ค. (Function Expression) ํ•จ์ˆ˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ๊ตฌ์„ฑํ•˜๋Š” ๊ธฐ๋ณธ์ ์ด building block ์ด๋ฉฐ sub-program ์ด๋ผ๊ณ ๋„ ๋ถˆ๋ฆฌ๋ฉฐ ์—ฌ๋Ÿฌ๋ฒˆ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๋‹ค. ํ•œ๊ฐ€์ง€ task ๋‚˜ ์–ด๋– ํ•œ ๊ฐ’์„ ๊ณ„์‚ฐํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•œ๋‹ค. โญ๏ธ ํ•จ์ˆ˜๋Š” input ๊ณผ output์ด ์ค‘์š”ํ•˜๊ณ  ํ•จ์ˆ˜์˜ ์ด๋ฆ„์„ ์ •ํ•˜๋Š”๊ฒƒ์ด ์ค‘์š”! function name(param1, param2) { body..

์›์‹œ๊ฐ’๊ณผ ๊ฐ์ฒด ๋น„๊ต

์›์‹œ ํƒ€์ž…๊ณผ ๊ฐ์ฒด ํƒ€์ž…์€ ํฌ๊ฒŒ ์„ธ ๊ฐ€์ง€ ์ธก๋ฉด์—์„œ ๋‹ค๋ฅด๋‹ค. ์›์‹œ ํƒ€์ž…์˜ ๊ฐ’, ์ฆ‰ ์›์‹œ ๊ฐ’์€ ๋ณ€๊ฒฝ ๋ถˆ๊ฐ€๋Šฅํ•œ ๊ฐ’ ์ด๋‹ค. ์ด์— ๋น„ํ•ด ๊ฐ์ฒด ํƒ€์ž…์˜ ๊ฐ’, ์ฆ‰ ๊ฐ์ฒด๋Š” ๋ณ€๊ฒฝ ๊ฐ€๋Šฅํ•œ ๊ฐ’์ด๋‹ค. ์›์‹œ ๊ฐ’์„ ๋ณ€์ˆ˜์— ํ• ๋‹นํ•˜๋ฉด ๋ณ€์ˆ˜์—๋Š” ์‹ค์ œ ๊ฐ’์ด ์ €์žฅ๋œ๋‹ค. ์ด์— ๋น„ํ•ด ๊ฐ์ฒด๋ฅผ ๋ณ€์ˆ˜์— ํ• ๋‹นํ•˜๋ฉด ๋ณ€์ˆ˜์—๋Š” ์ฐธ์กฐ๊ฐ’์ด ์ €์žฅ๋œ๋‹ค. ์›์‹œ๊ฐ’์„ ๊ฐ–๋Š” ๋ณ€์ˆ˜๋ฅผ ๋‹ค๋ฅธ ๋ณ€์ˆ˜์— ํ• ๋‹นํ•˜๋ฉด ์›๋ณธ์˜ ์›์‹œ ๊ฐ’์ด ๋ณต์‚ฌ๋˜์–ด ์ „๋‹ฌ๋œ๋‹ค. ์ด๋ฅผ ๊ฐ’์— ์˜ํ•œ ์ „๋‹ฌ ์ด๋ผ ํ•œ๋‹ค. ์ด์— ๋น„ํ•ด ๊ฐ์ฒด๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” ๋ณ€์ˆ˜๋ฅผ ๋‹ค๋ฅธ ๋ณ€์ˆ˜์— ํ• ๋‹นํ•˜๋ฉด ์›๋ณธ์˜ ์ฐธ์กฐ๊ฐ’์ด ๋ณต์‚ฌ๋˜์–ด ์ „๋‹ฌ๋œ๋‹ค. ์ด๋ฅผ ์ฐธ์กฐ์— ์˜ํ•œ ์ „๋‹ฌ ์ด๋ผ ํ•œ๋‹ค. ๐Ÿ’ก ์›์‹œ ํƒ€์ž…๊ณผ ์ฐธ์กฐ ํƒ€์ž…์˜ ์ฐจ์ด์ ์€ ์›์‹œํƒ€์ž…์€ ๋ถˆ๋ณ€์„ฑ์„ ๊ฐ–๊ณ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๊ณ  ๊นŠ์€ ๋ณต์‚ฌ (์›์‹œ ํƒ€์ž…) ์™€ ์–•์€ ๋ณต์‚ฌ ( ์ฐธ์กฐ ํƒ€์ž…) ์˜ ์ฐจ์ด์ ์€ ๊นŠ์€ ๋ณต์‚ฌ๋Š” ๊ฐ’์„ ๋ณต์‚ฌํ•˜๊ณ  ์–•์€๋ณต..

๊ฐ์ฒด ๋ฆฌํ„ฐ๋Ÿด

๊ฐ์ฒด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ๊ฐ์ฒด ๊ธฐ๋ฐ˜์˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์ด๋ฉฐ, ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๊ฑฐ์˜ ๋ชจ๋“  ๊ฒƒ์ด ๊ฐ์ฒด ์ด๋‹ค. ๐Ÿ“Œ ์›์‹œ๊ฐ’์„ ์ œ์™ธํ•œ ๋‚˜๋จธ์ง€ ๊ฐ’(ํ•จ์ˆ˜,๋ฐฐ์—ด,์ •๊ทœ ํ‘œํ˜„์‹ ๋“ฑ)์€ ๋ชจ๋‘ ๊ฐ์ฒด๋‹ค. ๊ฐ์ฒด๋Š” ํ”„๋กœํผํ‹ฐ(๊ฐ์ฒด์˜ ์ƒํƒœ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๊ฐ’data) ์™€ ๋ฉ”์„œ๋“œ(ํ”„๋กœํผํ‹ฐ๋ฅผ ์ฐธ์กฐํ•˜๊ณ  ์กฐ์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ๋™์ž‘)๋กœ ๊ตฌ์„ฑ๋œ ์ง‘ํ•ฉ์ฒด ์ด๋‹ค. ํ”„๋กœํผํ‹ฐ ๊ฐ์ฒด๋Š” ํ”„๋กœํผํ‹ฐ์˜ ์ง‘ํ•ฉ์ด๋ฉฐ, ํ”„๋กœํผํ‹ฐ๋Š” ํ‚ค(๋นˆ ๋ฌธ์ž์—ด์„ ํฌํ•จํ•˜๋Š” ๋ชจ๋“  ๋ฌธ์ž์—ด ๋˜๋Š” ์‹ฌ๋ฒŒ ๊ฐ’)์™€ ๊ฐ’(์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ์‚ฌ์šฉํ• ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๊ฐ’) ์œผ๋กœ ๊ตฌ์„ฑ ๋œ๋‹ค. let person = { // ํ”„๋กœํผํ‹ฐ ํ‚ค๋Š” name , ํ”„๋กœํผํ‹ฐ ๊ฐ’์€ 'Lee' name: 'Lee', // ํ”„๋กœํผํ‹ฐ ํ‚ค๋Š” age , ๊ฐ’์€ 20 age: 20 }; // {name: 'Lee' , age: 20} ๋ฉ”์„œ๋“œ ํ”„๋กœํผํ‹ฐ ๊ฐ’์ด..

๋‹จ์ถ•ํ‰๊ฐ€

๋…ผ๋ฆฌ๊ณฑ( && ) ์—ฐ์‚ฐ์ž 'cat' && 'dog' // "dog" ๋…ผ๋ฆฌ๊ณฑ(&&) ์—ฐ์‚ฐ์ž๋Š” ๋‘๊ฐœ์˜ ํ”ผ์—ฐ์‚ฐ์ž๊ฐ€ ๋ชจ๋‘ true๋กœ ํ‰๊ฐ€๋ ๋•Œ true๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ๋…ผ๋ฆฌ๊ณฑ ์—ฐ์‚ฐ์ž๋Š” ์ขŒํ•ญ์—์„œ ์šฐํ•ญ์œผ๋กœ ํ‰๊ฐ€๊ฐ€ ์ง„ํ–‰๋œ๋‹ค. ์ฒซ๋ฒˆ์งธ ํ”ผ์—ฐ์‚ฐ์ž 'cat'์€ Truthy ๊ฐ’์ด๋ฏ€๋กœ true๋กœ ํ‰๊ฐ€๋œ๋‹ค. ํ•˜์ง€๋งŒ ๋‘๋ฒˆ์งธ ํ”ผ์—ฐ์‚ฐ์ž๊ฐ€ ์œ„ ๋…ผ๋ฆฌ๊ณฑ ์—ฐ์‚ฐ์ž ํ‘œํ˜„์‹์˜ ํ‰๊ฐ€ ๊ฒฐ๊ณผ๋ฅผ ๊ฒฐ์ •ํ•œ๋‹ค. ์ด๋•Œ ๋…ผ๋ฆฌ๊ณฑ ์—ฐ์‚ฐ์ž๋Š” ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์˜ ๊ฒฐ๊ณผ๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ๋‘๋ฒˆ์งธ ํ”ผ์—ฐ์‚ฐ์ž, ์ฆ‰ ๋ฌธ์ž์—ด 'dog'๋ฅผ ๊ทธ๋Œ€๋กœ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ๋…ผ๋ฆฌํ•ฉ( || ) ์—ฐ์‚ฐ์ž 'cat' || 'dog' // "cat" ๋…ผ๋ฆฌํ•ฉ( || ) ์—ฐ์‚ฐ์ž๋Š” ๋‘๊ฐœ์˜ ํ”ผ์—ฐ์‚ฐ์ž ์ค‘ ํ•˜๋‚˜๋งŒ true๋กœ ํ‰๊ฐ€๋˜์–ด๋„ true๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ๋…ผ๋ฆฌํ•ฉ ์—ฐ์‚ฐ์ž๋„ ์ขŒํ•ญ์—์„œ ์šฐํ•ญ์œผ๋กœ ํ‰๊ฐ€๊ฐ€ ์ง„ํ–‰๋œ๋‹ค. ์ฒซ๋ฒˆ์งธ ํ”ผ์—ฐ์‚ฐ์ž 'cat'์€ Tr..

ํƒ€์ž… ๋ณ€ํ™˜

๊ฐœ๋ฐœ์ž๊ฐ€ ์˜๋„์ ์œผ๋กœ ๊ฐ’์˜ ํƒ€์ž…์„ ๋ณ€ํ™˜ ํ•˜๋Š”๊ฒƒ์„ ๋ช…์‹œ์  ํƒ€์ž… ๋ณ€ํ™˜ ๋˜๋Š” ํƒ€์ž… ์บ์ŠคํŒ… ์ด๋ผ ํ•œ๋‹ค. let x = 10; // ๋ช…์‹œ์  ํƒ€์ž…๋ณ€ํ™˜ // ์ˆซ์ž๋ฅผ ๋ฌธ์ž์—ด๋กœ ํƒ€์ž… ์บ์ŠคํŒ… ํ•œ๋‹ค. let str = x.toString(); console.log(typeof x,x) // number 10 ๊ฐœ๋ฐœ์ž์˜ ์˜๋„์™€๋Š” ์ƒ๊ด€์—†์ด ํ‘œํ˜„์‹์„ ํ‰๊ฐ€ํ•˜๋Š” ๋„์ค‘์— ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„์— ์˜ํ•ด ์•”๋ฌต์ ์œผ๋กœ ํƒ€์ž…์ด ์ž๋™๋ณ€ํ™˜ ๋˜๋Š”๊ฒƒ์„ ์•”๋ฌต์  ํƒ€์ž…๋ณ€ํ™˜ ๋˜๋Š” ํƒ€์ž… ๊ฐ•์ œ ๋ณ€ํ™˜ ์ด๋ผ ํ•œ๋‹ค. let x = 10; // ์•”๋ฌต์  ํƒ€์ž…๋ณ€ํ™˜ // ๋ฌธ์ž์—ด ์—ฐ๊ฒฐ ์—ฐ์‚ฐ์ž๋Š” ์ˆซ์ž ํƒ€์ž… x์˜ ๊ฐ’์„ ๋ฐ”ํƒ•์œผ๋กœ ์ƒˆ๋กœ์šด ๋ฌธ์ž์—ด์„ ์ƒ์„ฑํ•œ๋‹ค. let str = x + ''; console.log(typeof str,str); // string 10 //x ๋ณ€์ˆ˜์˜ ๊ฐ’์ด ๋ณ€๊ฒฝ๋œ ..

๋ฐ˜๋ณต ๋ฌธ

๐ŸŽฃ if ... else ๋ฌธ if ... else ๋ฌธ์€ ์ฃผ์–ด์ง„ ์กฐ๊ฑด์‹ (๋ถˆ๋ฆฌ์–ธ ๊ฐ’์œผ๋กœ ํ‰๊ฐ€๋  ์ˆ˜ ์žˆ๋Š” ํ‘œํ˜„์‹)์˜ ํ‰๊ฐ€ ๊ฒฐ๊ณผ, ์ฆ‰ ๋…ผ๋ฆฌ์  ์ฐธ ๋˜๋Š” ๊ฑฐ์ง“์— ๋”ฐ๋ผ ์‹คํ–‰ํ•  ์ฝ”๋“œ ๋ธ”๋ก์„ ๊ฒฐ์ •ํ•œ๋‹ค. โœ๏ธ ์กฐ๊ฑด์‹์˜ ํ‰๊ฐ€ ๊ฒฐ๊ณผ๊ฐ€ true์ผ ๊ฒฝ์šฐ if ๋ฌธ์˜ ์ฝ”๋“œ ๋ธ”๋ก์ด ์‹คํ–‰๋˜๊ณ , false์ผ ๊ฒฝ์šฐ else ๋ฌธ์˜ ์ฝ”๋“œ ๋ธ”๋ก์ด ์‹คํ–‰๋œ๋‹ค. if (์กฐ๊ฑด์‹) { // ์กฐ๊ฑด์‹์ด ์ฐธ์ด๋ฉด ์ด ์ฝ”๋“œ๋ธ”๋ก์ด ์‹คํ–‰๋œ๋‹ค. } else { // ์กฐ๊ฑด์‹์ด ๊ฑฐ์ง“์ด๋ฉด ์ด ์ฝ”๋“œ๋ธ”๋ก์ด ์‹คํ–‰๋œ๋‹ค. } ๐ŸŽฃ else if ๋ฌธ else if ๋ฌธ๊ณผ else ๋ฌธ์€ ์˜ต์…˜์ด๋‹ค. ์ฆ‰, ์‚ฌ์šฉํ• ์ˆ˜๋„ ์žˆ๊ณ  ์‚ฌ์šฉํ•˜์ง€ ์•Š์„์ˆ˜๋„ ์žˆ๋‹ค. if ๋ฌธ๊ณผ else ๋ฌธ์€ 2๋ฒˆ ์ด์ƒ ์‚ฌ์šฉํ• ์ˆ˜ ์—†์ง€๋งŒ else if ๋ฌธ์€ ์—ฌ๋Ÿฌ๋ฒˆ ์‚ฌ์šฉํ• ์ˆ˜ ์žˆ๋‹ค. if (์กฐ๊ฑด์‹1) { // ์กฐ๊ฑด์‹1์ด ์ฐธ์ด๋ฉด ์ด ์ฝ”..