[JavaScript] ํ”„๋กœํ† ํƒ€์ž…

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ๋ช…๋ นํ˜•, ํ•จ์ˆ˜ํ˜•, ํ”„๋กœํ† ํƒ€์ž… ๊ธฐ๋ฐ˜ ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ์ง€์›ํ•˜๋Š” ๋ฉ€ํ‹ฐ ํŒจ๋Ÿฌ๋‹ค์ž„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์ž…๋‹ˆ๋‹ค. C++๋‚˜ ์ž๋ฐ”์™€ ๊ฐ™์€ ํด๋ž˜์Šค ๊ธฐ๋ฐ˜ ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋ณด๋‹ค ํšจ์œจ์ ์ด๋ฉฐ ๋” ๊ฐ•๋ ฅํ•œ ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋Šฅ๋ ฅ์„ ์ง€๋‹ˆ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ๋ช…๋ น์–ด ๋˜๋Š” ํ•จ์ˆ˜์˜ ๋ชฉ๋ก์œผ๋กœ ๋ณด๋Š” ์ „ํ†ต์ ์ธ ๋ช…๋ นํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ์ ˆ์ฐจ์ง€ํ–ฅ์  ๊ด€์ ์—์„œ ๋ฒ—์–ด๋‚˜ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋…๋ฆฝ์  ๋‹จ์œ„, ์ฆ‰ ๊ฐ์ฒด์˜ ์ง‘ํ•ฉ์œผ๋กœ ํ”„๋กœ๊ทธ๋žจ์„ ํ‘œํ˜„ํ•˜๋ ค๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํŒจ๋Ÿฌ๋‹ค์ž„์ž…๋‹ˆ๋‹ค. // ์ด๋ฆ„๊ณผ ์ฃผ์†Œ ์†์„ฑ์„ ๊ฐ–๋Š” ๊ฐ์ฒด const person = { name: 'Lee', address: 'Seoul' }; const circle = { radius: 5, getDiameter() { return 2 * radi..

[JavaScript] let, const ํ‚ค์›Œ๋“œ์™€ ๋ธ”๋ก ๋ ˆ๋ฒจ ์Šค์ฝ”ํ”„

var ํ‚ค์›Œ๋“œ๋กœ ์„ ์–ธํ•œ ๋ณ€์ˆ˜์˜ ๋ฌธ์ œ์  ES5๊นŒ์ง€ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•  ์ˆ˜ ์žˆ๋Š” ์œ ์ผํ•œ ๋ฐฉ๋ฒ•์€ var ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์€ var ํ‚ค์›Œ๋“œ์˜ ๋…ํŠนํ•œ ํŠน์ง•๋“ค์€ ์ฃผ์˜๋ฅผ ๊ธฐ์šธ์ด์ง€ ์•Š์œผ๋ฉด ์‹ฌ๊ฐํ•œ ๋ฌธ์ œ๋ฅผ ๋ฐœ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณ€์ˆ˜ ์ค‘๋ณต ์„ ์–ธ ํ—ˆ์šฉ var ํ‚ค์›Œ๋“œ๋กœ ์„ ์–ธํ•œ ๋ณ€์ˆ˜๋Š” ์ค‘๋ณต ์„ ์–ธ์ด ๊ฐ€๋Šฅํ•ด์„œ ์˜๋„์น˜ ์•Š๊ฒŒ ๋จผ์ € ์„ ์–ธ๋œ ๋ณ€์ˆ˜์˜ ๊ฐ’์ด ๋ณ€๊ฒฝ๋˜๋Š” ๋ถ€์ž‘์šฉ์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. var x = 1; var y = 1; // var ํ‚ค์›Œ๋“œ๊ฐ€ ์—†๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋™์ž‘ var x = 100; // ์ดˆ๊ธฐํ™”๋ฌธ์ด ์—†๋Š” ๋ณ€์ˆ˜ ์„ ์–ธ๋ฌธ์€ ๋ฌด์‹œ๋จ var y; console.log(x); // 100 console.log(y); // 1 x์™€ y๊ฐ€ ์ค‘๋ณต ์„ ์–ธ๋จ x๋Š” ์ดˆ๊ธฐํ™”๋ฌธ์ด ์žˆ์–ด์„œ var ํ‚ค์›Œ๋“œ๊ฐ€ ์—†๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋™์ž‘ํ•ด 100์œผ๋กœ ๊ฐ’์ด ๋ณ€๊ฒฝ๋จ..

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

๊ฐ์ฒด๋ž€? ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ๊ฐœ์ฒด๊ธฐ๋ฐ˜์˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ, ์›์‹œ ๊ฐ’์„ ์ œ์™ธํ•œ ๋ชจ๋“  ๊ฐ’์€ ๊ฐ์ฒดํƒ€์ž…์ž…๋‹ˆ๋‹ค. ์ด๋Š” ๋‹ค์–‘ํ•œ ํƒ€์ž…์˜ ๊ฐ’์„ ํ•˜๋‚˜์˜ ๋‹จ์œ„๋กœ ๊ตฌ์„ฑํ•œ ๋ณตํ•ฉ์ ์ธ ์ž๋ฃŒ๊ตฌ์กฐ๋กœ ์›์‹œ ๊ฐ’๊ณผ ๋‹ค๋ฅด๊ฒŒ ๋ณ€๊ฒฝ ๊ฐ€๋Šฅํ•œ ๊ฐ’์ž…๋‹ˆ๋‹ค. ๊ฐ์ฒด๋ฅผ ์ •์˜ํ•˜์ž๋ฉด ํ”„๋กœํผํ‹ฐ์™€ ๋ฉ”์„œ๋“œ๋กœ ๊ตฌ์„ฑ๋œ ์ง‘ํ•ฉ์ฒด์ž…๋‹ˆ๋‹ค. ํ”„๋กœํผํ‹ฐ : ๊ฐ์ฒด์˜ ์ƒํƒœ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๊ฐ’. key๊ณผ value๋กœ ๊ตฌ์„ฑ. ๋ฉ”์„œ๋“œ : ํ”„๋กœํผํ‹ฐ(์ƒํƒœ ๋ฐ์ดํ„ฐ)๋ฅผ ์ฐธ์กฐํ•˜๊ณ  ์กฐ์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ๋™์ž‘. var counter = { num: 0, increase() { this.num++; } }; ์œ„์˜ ์˜ˆ์‹œ์™€ ๊ฐ™์ด ๊ฐ์ฒด๋Š” ์ƒํƒœ์™€ ๋™์ž‘์„ ํ•˜๋‚˜์˜ ๋‹จ์œ„๋กœ ๊ตฌ์กฐํ™” ํ•  ์ˆ˜ ์žˆ์–ด์„œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ๊ฐ์ฒด ๋ฆฌํ„ฐ๋Ÿด์— ์˜ํ•œ ๊ฐ์ฒด ์ƒ์„ฑ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ํ”„๋กœํ† ํƒ€์ž… ๊ธฐ๋ฐ˜ ๊ฐ์ฒด์ง€ํ–ฅ ์–ธ์–ด๋กœ์„œ ๋‹ค์–‘ํ•œ ๊ฐ์ฒด ์ƒ์„ฑ ๋ฐฉ๋ฒ•์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ์ฒด *๋ฆฌ..

[JavaScript] ๋ฐ์ดํ„ฐ ํƒ€์ž…

๋ฐ์ดํ„ฐ ํƒ€์ž…์ด๋ž€? ์‹(ํ‘œํ˜„์‹)์ด *ํ‰๊ฐ€๋˜์–ด ์ƒ์„ฑ๋œ ๊ฒฐ๊ณผ์ธ ๊ฐ’์˜ ์ข…๋ฅ˜๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋ชจ๋“  ๊ฐ’์„ ๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š”๋ฐ, ES6์€ 7๊ฐœ์˜ ํƒ€์ž…์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. *ํ‰๊ฐ€ : ์‹์„ ํ•ด์„ํ•ด์„œ ๊ฐ’์„ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜ ์ฐธ์กฐํ•œ๋Š” ๊ฒƒ [ES6์˜ 7๊ฐœ์˜ ๋ฐ์ดํ„ฐ ํƒ€์ž…] ๊ตฌ๋ถ„ ๋ฐ์ดํ„ฐ ํƒ€์ž… ์„ค๋ช… ์›์‹œํƒ€์ž… ์ˆซ์ž(number) ํƒ€์ž… ์ˆซ์ž. ์ •์ˆ˜์™€ ์‹ค์ˆ˜ ๊ตฌ๋ถ„ ์—†์ด ํ•˜๋‚˜์˜ ์ˆซ์ž ํƒ€์ž…๋งŒ ์กด์žฌ ๋ฌธ์ž์—ด(string) ํƒ€์ž… ๋ฌธ์ž์—ด ๋ถˆ๋ฆฌ์–ธ(boolean) ํƒ€์ž… ๋…ผ๋ฆฌ์  ์ฐธ(true)์™€ ๊ฑฐ์ง“(false) undefined ํƒ€์ž… var ํ‚ค์›Œ๋“œ๋กœ ์„ ์–ธ๋œ ๋ณ€์ˆ˜์— ์•”๋ฌต์ ์œผ๋กœ ํ• ๋‹น๋˜๋Š” ๊ฐ’ null ํƒ€์ž… ๊ฐ’์ด ์—†๋‹ค๋Š” ๊ฒƒ์„ ์˜๋„์ ์œผ๋กœ ๋ช…์‹œํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๊ฐ’ ์‹ฌ๋ฒŒ(symbol) ํƒ€์ž… ES6์—์„œ ์ถ”๊ฐ€๋œ 7๋ฒˆ์งธ ํƒ€์ž… ๊ฐ์ฒด ํƒ€์ž… ๊ฐ์ฒด, ํ•จ์ˆ˜, ๋ฐฐ์—ด ๋“ฑ ์ˆซ์ž..

[JavaScript] ๋ณ€์ˆ˜

๋ณ€์ˆ˜๋ž€? ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ์ฒ˜๋ฆฌํ•˜๊ณ  ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค. ๋ณ€์ˆ˜๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—์„œ ์ด๋Ÿฌํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ํ•ต์‹ฌ ๊ฐœ๋…์œผ๋กœ, ์‚ฌ๋žŒ๊ณผ ๋‹ค๋ฅด๊ฒŒ ์ปดํ“จํ„ฐ๋Š” CPU๋ฅผ ์‚ฌ์šฉํ•ด ์—ฐ์‚ฐ์„ ํ•˜๊ณ , *๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ์–ตํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ์…€์€ ๊ณ ์œ ํ•œ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ๊ฐ€์ง€๊ฒŒ ๋˜๊ณ  CPU๋Š” ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ์—์„œ ์›ํ•˜๋Š” ๊ฐ’์„ ์ฝ์–ด ๋“ค์—ฌ ์‚ฌ์šฉํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ํ†ตํ•ด ๊ฐ’์— ์ง์ ‘ ์ ‘๊ทผํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์•ˆ์ „ํ•˜์ง€ ์•Š์•„์„œ ๋ณ€์ˆ˜๋ผ๋Š” ๋งค์ปค๋‹ˆ์ฆ˜์„ ์ด์šฉํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. *๋ฉ”๋ชจ๋ฆฌ : ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๋ฉ”๋ชจ๋ฆฌ ์…€์˜ ์ง‘ํ•ฉ์ฒด. ์…€ 1๊ฐœ = 1๋ฐ”์ดํŠธ(8๋น„ํŠธ) ๋ณ€์ˆ˜(variable)๋Š” ํ•˜๋‚˜์˜ ๊ฐ’์„ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•ด ํ™•๋ณดํ•œ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„ ์ž์ฒด ๋˜๋Š” ๊ทธ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ์‹๋ณ„ํ•˜๊ธฐ ์œ„ํ•ด ๋ถ™์ธ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค. ์ฆ‰, ๊ฐ’์˜ ์œ„์น˜๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” ์ƒ์ง•์ ์ธ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค..

[JavaScript] ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ž€?

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ํƒ„์ƒ ๋ณดํ†ต ์–ธ์–ด๊ฐ€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•œ ๋ฒ”์šฉ์ ์ธ ์šฉ๋„๋กœ ์„ค๊ณ„๋˜๋Š” ๋ฐ˜๋ฉด, ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ์›นํŽ˜์ด์ง€์˜ ๋‹จ์ˆœํ•œ ๋ณด์กฐ ๊ธฐ๋Šฅ์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ์ œํ•œ์ ์ธ ์šฉ๋„๋กœ ํƒ„์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. 1995๋…„, ์›น ๋ธŒ๋ผ์šฐ์ € ์‹œ์žฅ์„ ์ง€๋ฐฐํ•˜๋˜ ๋„ท์Šค์ผ€์ดํ”„ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์ฆˆ๊ฐ€ ๋ธŒ๋ Œ๋˜ ์•„์ดํฌ๊ฐ€ ๊ฐœ๋ฐœํ•œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋„์ž…ํ•˜๋ฉฐ ์‹œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ดˆ๊ธฐ์—” ๋ชจ์นด๋กœ ๋ช…๋ช…๋˜์—ˆ์œผ๋‚˜ ์ถ”ํ›„ ๋ผ์ด๋ธŒ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๊ฑฐ์ณ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ผ๋Š” ์ตœ์ข… ์ด๋ฆ„์ด ํƒ„์ƒํ•˜์˜€์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ์˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ๋ชจ๋“  ๋ธŒ๋ผ์šฐ์ €์˜ ํ‘œ์ค€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ ์ž๋ฆฌ์žก์•˜์œผ๋ฉฐ, ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋˜๋ฉฐ ๋ช…์‹ค์ƒ๋ถ€ํ•œ ๋ฒ”์šฉ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ์–ธ์–ด๋กœ ์„ฑ์žฅํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ํ‘œ์ค€ํ™” 1996๋…„ 8์›”, ๋„ท์Šค์ผ€์ดํ”„ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์ฆˆ์™€ ๊ฒฝ์Ÿ์‚ฌ์˜€๋˜ ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ๊ฐ€ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ํŒŒ์ƒ ๋ฒ„์ „์ธ JScript๋ฅผ I..