๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

Study/JavaScript

(6)
[๋ชจ๋˜์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ]06 ์ด๋ฒคํŠธ์™€ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ๊ธฐ 06-1. ์ด๋ฒคํŠธ ์•Œ์•„๋ณด๊ธฐ ์ด๋ฒคํŠธ๋ž€ ์ด๋ฒคํŠธ: ์›น ๋ธŒ๋ผ์šฐ์ €๋‚˜ ์‚ฌ์šฉ์ž๊ฐ€ ์‹คํ–‰ํ•˜๋Š” ์–ด๋–ค ๋™์ž‘ ex) ์›น ๋ฌธ์„œ์—์„œ ํ‚ค๋ณด๋“œ์˜ ํ‚ค๋ฅผ ๋ˆ„๋ฅด๋Š” ๊ฒƒ, ์›น ๋ธŒ๋ผ์šฐ์ € ์ฐฝ์— ์›น ํŽ˜์ด์ง€๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๋Š” ๊ฒƒ ์ด๋ฒคํŠธ๋Š” ์›น ๋ฌธ์„œ ์˜์—ญ์—์„œ ์ด๋ฃจ์–ด์ง€๋Š” ๋™์ž‘๋งŒ ๋งํ•จ(ex. ์›น ํŽ˜์ด์ง€ ์ฝ์–ด ์˜ค๊ธฐ, ๋งํฌ ํด๋ฆญํ•˜๊ธฐ) (์›น ๋ธŒ๋ผ์šฐ์ € ์ฐฝ ๋งจ ์œ„ ์ œ๋ชฉ ํ‘œ์‹œ์ค„์„ ํด๋ฆญํ•˜๋Š” ๊ฒƒ์€ ์ด๋ฒคํŠธ๊ฐ€ ์•„๋‹˜(์˜์—ญ ๋ฒ—์–ด๋‚ฌ์œผ๋ฏ€๋กœ)) ๋ฌธ์„œ ๋กœ๋”ฉ ์ด๋ฒคํŠธ ์„œ๋ฒ„์—์„œ ์›น ๋ฌธ์„œ๋ฅผ ๊ฐ€์ ธ์˜ค๊ฑฐ๋‚˜ ์œ„์•„๋ž˜๋กœ ์Šคํฌ๋กคํ•˜๋Š” ๋“ฑ ์›น ๋ฌธ์„œ๋ฅผ ์›น ๋ธŒ๋ผ์šฐ์ € ์ฐฝ์— ๋ณด์—ฌ์ฃผ๋Š” ๊ฒƒ๊ณผ ๊ด€๋ จ๋œ ์ด๋ฒคํŠธ ์ด๋ฒคํŠธ ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ์ˆœ๊ฐ„ abort ์›น ๋ฌธ์„œ๊ฐ€ ์™„์ „ํžˆ ๋กœ๋”ฉ๋˜๊ธฐ ์ „์— ๋ถˆ๋Ÿฌ์˜ค๊ธฐ๋ฅผ ๋ฉˆ์ถ”์—ˆ์„ ๋•Œ error ๋ฌธ์„œ๊ฐ€ ์ •ํ™•ํžˆ ๋กœ๋”ฉ๋˜์ง€ ์•Š์•˜์„ ๋•Œ load ๋ฌธ์„œ๊ฐ€ ๋กœ๋”ฉ์ด ๋๋‚ฌ์„ ๋•Œ resize ๋ฌธ์„œ ํ™”๋ฉด์˜ ํฌ๊ธฐ๊ฐ€ ๋ฐ”๋€Œ์—ˆ์„ ๋•Œ ..
[๋ชจ๋˜์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ]05 DOM์˜ ๊ธฐ์ดˆ 05-1. DOM๊ณผ DOMํŠธ๋ฆฌ DOM: Document Object Model, ๋ฌธ์„œ ๊ฐ์ฒด ๋ชจ๋ธ DOM์ด๋ž€ DOM: ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๊ฐ™์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ ์›น ๋ฌธ์„œ์— ์ ‘๊ทผํ•˜๊ณ  ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋„๋ก ์›น ๋ฌธ์„œ๋ฅผ ์ฒด๊ณ„์ ์œผ๋กœ ์ •๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ• DOM์—์„œ๋Š” ์›น ๋ฌธ์„œ๋ฅผ ํ•˜๋‚˜์˜ ๊ฐ์ฒด๋กœ ์ •์˜ํ•˜๊ณ , ์›น ๋ฌธ์„œ๋ฅผ ์ด๋ฃจ๋Š” ๋ชจ๋“  ์š”์†Œ(ํ…์ŠคํŠธ, ์ด๋ฏธ์ง€, ํ‘œ ๋“ฑ)๋„ ๊ฐ๊ฐ ๊ฐ์ฒด๋กœ ์ •์˜ํ•จ ex) ์›น ๋ฌธ์„œ ์ „์ฒด → document ๊ฐ์ฒด, ์›น ๋ฌธ์„œ์— ์‚ฝ์ž…๋œ ์ด๋ฏธ์ง€ → image ๊ฐ์ฒด (→ '๋ฌธ์„œ ๊ฐ์ฒด ๋ชจ๋ธ' ์ด๋ผ๊ณ  ํ•จ) ์›น ๋ฌธ์„œ์˜ ๊ฐ์ฒด๋“ค๋„ ๊ฐ์ฒด์ด๋ฏ€๋กœ ํ”„๋กœํผํ‹ฐ์™€ ๋ฉ”์„œ๋“œ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Œ DOM ํŠธ๋ฆฌ ์›น ๋ฌธ์„œ๋Š” ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ํƒœ๊ทธ๊ฐ€ ์„œ๋กœ ํฌํ•จ ๊ด€๊ณ„๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Œ. ์ด๋Ÿฐ ๊ด€๊ณ„ ๋•Œ๋ฌธ์— ๊ฐ ํƒœ๊ทธ ๊ฐ„์—๋Š” '๋ถ€๋ชจ'์™€ '์ž์‹' ๊ด€๊ณ„๊ฐ€ ์ƒ๊น€ Do it! html ์š”์†Œ → ..
[๋ชจ๋˜์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ]04 ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ•œ๋ฐœ ๋” ๋‚˜๊ฐ€๊ธฐ, ํ•จ์ˆ˜์™€ ์Šค์ฝ”ํ”„ 04-1. ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ๊ฝƒ, ํ•จ์ˆ˜ ํ•จ์ˆ˜: ๋™์ž‘ํ•ด์•ผ ํ•  ๋ชฉ์ ๋Œ€๋กœ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ช…๋ น์„ ๋ฌถ๋Š” ๊ฒƒ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ  ์ฒ˜๋ฆฌํ•ด์•ผํ•  ๊ธฐ๋Šฅ์ด ๋งŽ์ง€๋งŒ, ํ•จ์ˆ˜ ์—†์ด ์ž‘์„ฑํ•œ๋‹ค๋ฉด ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•  ๋•Œ๋งˆ๋‹ค ๊ฐ™์€ ๋ช…๋ น์„ ๊ณ„์† ๋ฐ˜๋ณตํ•ด์•ผํ•จ ํ•˜์ง€๋งŒ, ๊ธฐ๋Šฅ๋ณ„๋กœ ํ•จ์ˆ˜๋ฅผ ๋”ฐ๋กœ ๋งŒ๋“ค์–ด ๋‘”๋‹ค๋ฉด ํ•„์š”ํ•  ๋•Œ๋งˆ๋‹ค ์ ์ ˆํ•œ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด์„œ ํ•จ์ˆ˜๋ณ„๋กœ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Œ ํ•จ์ˆ˜ ์„ ์–ธํ•˜๊ณ  ํ˜ธ์ถœํ•˜๊ธฐ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—๋Š” ๋‹ค์–‘ํ•œ ํ•จ์ˆ˜๋“ค์ด ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด์ ธ ์žˆ์œผ๋ฏ€๋กœ ๊ฐœ๋ฐœ์ž๋Š” ํ•ด๋‹น ํ•จ์ˆ˜๋ฅผ ๊ฐ€์ ธ์™€์„œ ์‚ฌ์šฉ๋งŒ ํ•˜๋ฉด ๋จ ํ•จ์ˆ˜๋ฅผ ์„ ์–ธํ•  ๋•Œ๋Š” function์ด๋ผ๋Š” ์˜ˆ์•ฝ์–ด๋ฅผ ์‚ฌ์šฉํ•˜๊ณ , ํ•จ์ˆ˜ ์ด๋ฆ„์„ ์ ์€ ํ›„ ์ค‘๊ด„ํ˜ธ ์•ˆ์— ์‹คํ–‰ํ•  ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ช…๋ น์„ ๋ฌถ์Œ ํ•จ์ˆ˜ ์ด๋ฆ„์„ ์ ๋Š” ์ด์œ : ๋‚˜์ค‘์— ์ด๋ฆ„์„ ์‚ฌ์šฉํ•ด ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด์„œ function ํ•จ์ˆ˜๋ช…(){ ๋ช…๋ น(๋“ค) } ์„ ์–ธํ•œ ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰ํ•  ๋• ํ•จ์ˆ˜ ..
[๋ชจ๋˜์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ]03 ์—ฐ์‚ฐ์ž์™€ ์ œ์–ด๋ฌธ 03-1. ํ”„๋กœ๊ทธ๋žจ ๋™์ž‘์„ ๊ฐ€๋ฆฌํ‚ค๋Š” ๊ธฐํ˜ธ, ์—ฐ์‚ฐ์ž ์‚ฐ์ˆ ์—ฐ์‚ฐ์ž A+B → A, B๋Š” ํ”ผ์—ฐ์‚ฐ์ž, +๋Š” ์—ฐ์‚ฐ์ž ์—ฐ์‚ฐ์ž ๊ธฐ๋Šฅ ์‚ฌ์šฉ ์˜ˆ + 2๊ฐœ์˜ ํ”ผ์—ฐ์‚ฐ์ž ๊ฐ’์„ ๋”ํ•จ c = a + b - ์ฒซ๋ฒˆ์งธ ํ”ผ์—ฐ์‚ฐ์ž ๊ฐ’์—์„œ ๋‘๋ฒˆ์งธ ํ”ผ์—ฐ์‚ฐ์ž ๊ฐ’์„ ๋บŒ c = a – b * 2๊ฐœ์˜ ํ”ผ์—ฐ์‚ฐ์ž ๊ฐ’์„ ๊ณฑํ•จ c = a * b / ์ฒซ๋ฒˆ์งธ ํ”ผ์—ฐ์‚ฐ์ž ๊ฐ’์—์„œ ๋‘๋ฒˆ์งธ ํ”ผ์—ฐ์‚ฐ์ž ๊ฐ’์„ ๋‚˜๋ˆ” c = a / b % ์ฒซ๋ฒˆ์งธ ํ”ผ์—ฐ์‚ฐ์ž ๊ฐ’์„ ๋‘๋ฒˆ์งธ ํ”ผ์—ฐ์‚ฐ์ž ๊ฐ’์œผ๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€ c = a % b ++ ํ”ผ์—ฐ์‚ฐ์ž ๊ฐ’์„ 1 ์ฆ๊ฐ€ a++ -- ํ”ผ์—ฐ์‚ฐ์ž ๊ฐ’์„ 1 ๊ฐ์†Œ B++ ์ฆ๊ฐ€ ์—ฐ์‚ฐ์ž(++)์™€ ๊ฐ์†Œ ์—ฐ์‚ฐ์ž(--)๋Š” ์œ„์น˜์— ๋”ฐ๋ผ ์ฒ˜๋ฆฌ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ฌ๋ผ์ง ํ›„์œ„์—ฐ์‚ฐ์ž: x + y ๊ณ„์‚ฐ ํ›„ y๊ฐ€ 1 ๊ฐ์†Œํ•จ ์ „์œ„์—ฐ์‚ฐ์ž: y๊ฐ€ 1 ๊ฐ์†Œํ•œ ํ›„ x + y ๊ณ„์‚ฐํ•จ x = x + 1๋ณด๋‹ค x..
[๋ชจ๋˜์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ]02 ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ๊ธฐ๋ณธ, ๋ณ€์ˆ˜์™€ ์ž๋ฃŒํ˜• ์‚ดํŽด๋ณด๊ธฐ 02-1. ํ”„๋กœ๊ทธ๋žจ์—์„œ ์ž…๋ ฅ๋ฐ›๊ณ  ์ถœ๋ ฅํ•˜๋Š” ๋ฐฉ๋ฒ• alert(), confirm(), prompt()๋กœ ํŒ์—… ์ฐฝ ํ‘œ์‹œํ•˜๊ธฐ alert() ํ•จ์ˆ˜ alert๋ฌธ์€ ์•Œ๋ฆผ ์ฐฝ์„ ํ‘œ์‹œ alert() ํ•จ์ˆ˜์˜ ์†Œ๊ด„ํ˜ธ ์•ˆ์— ๋ฉ”์‹œ์ง€๋ฅผ ์ž…๋ ฅํ•˜๊ฑฐ๋‚˜ ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์•Œ๋ฆผ ์ฐฝ์— ํ…์ŠคํŠธ๋‚˜ ๋ณ€์ˆซ๊ฐ’์„ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ์Œ ์•Œ๋ฆผ ์ฐฝ์— ๋‚ด์šฉ์„ ํ‘œ์‹œํ•˜๋ ค๋ฉด alert() ํ•จ์ˆ˜์˜ ์†Œ๊ด„ํ˜ธ ์•ˆ์— ํฐ๋”ฐ์˜ดํ‘œ๋‚˜ ์ž‘์€๋”ฐ์˜ดํ‘œ์™€ ํ•จ๊ผ ๋‚ด์šฉ ์ž‘์„ฑ - ์•Œ๋ฆผ ์ฐฝ์— ๋‚ด์šฉ์„ ํ‘œ์‹œํ•˜๋ ค๋ฉด alert() ํ•จ์ˆ˜์˜ ์†Œ๊ด„ํ˜ธ ์•ˆ์— ํฐ๋”ฐ์˜ดํ‘œ๋‚˜ ์ž‘์€๋”ฐ์˜ดํ‘œ์™€ ํ•จ๊ผ ๋‚ด์šฉ ์ž‘์„ฑ alert("์•ˆ๋…•ํ•˜์„ธ์š”?") - ๋งŒ์•ฝ a๋ผ๋Š” ๋ณ€์ˆ˜์— ์ˆซ์ž 10์„ ์ €์žฅํ–ˆ๋‹ค๋ฉด alert() ํ•จ์ˆ˜์˜ ์†Œ๊ด„ํ˜ธ ์•ˆ์— ๋ณ€์ˆ˜ ์ด๋ฆ„์„ ์ง€์ •ํ•ด์„œ ๋ณ€์ˆ˜๊ฐ’์„ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ์Œ a = 10 alert(a) confirm() ํ•จ์ˆ˜ [ํ™•์ธ] ๋ฒ„ํŠผ๊ณผ..
[๋ชจ๋˜์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ]01 ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์‹œ์ž‘ํ•˜๊ธฐ โ˜… ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์™€ ์ž๋ฐ”๋Š” ๋‹ค๋ฅด๋‹ค ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ธํ„ฐ๋„ท ์ดˆ์ฐฝ๊ธฐ ์›น ๋ธŒ๋ผ์šฐ์ € ์‹œ์žฅ์„ ์„๊ถŒํ•˜๊ณ  ์žˆ๋˜ ๋„ท์Šค์ผ€์ดํ”„์—์„œ ์›น๋ฌธ์„œ๋ฅผ ์ข€ ๋” ๋™์ ์œผ๋กœ ํ‘œ์‹œํ•˜๊ธฐ ์œ„ํ•ด ๋ผ์ด๋ธŒ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๊ฐœ๋ฐœ → ์ƒˆ๋กœ์šด ๊ธฐ์ˆ ์„ ํ†ตํ•ด HTML๋กœ๋Š” ํ•  ์ˆ˜ ์—†๋Š” ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ 1995๋…„, ์ฌ ๋งˆ์ดํฌ๋กœ์ฆˆ์‹œ์Šคํ…œ์ฆˆ๊ฐ€ ๋ผ์ด๋ธŒ์Šคํฌ๋ฆฝํŠธ ๊ฐœ๋ฐœ๊ถŒ์„ ๋„˜๊ฒจ๋ฐ›์Œ(→ ์ž๋ฐ” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋ฅผ ๋งŒ๋“  ํšŒ์‚ฌ) ๊ทธ ์ด๋ฆ„์„ ๋”ฐ์„œ '๋ผ์ด๋ธŒ์Šคํฌ๋ฆฝํŠธ' ๋Œ€์‹  '์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ'๋ผ๋Š” ์ด๋ฆ„์„ ๋ถ™์ด๊ฒŒ ๋จ 1997๋…„ 6์›”, ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ์Šคํฌ๋ฆฝํŠธ ํ‘œ์ค€์œผ๋กœ ์ฑ„ํƒ๋˜์—ˆ๊ณ  ์ด๋•Œ ๊ณต์‹์ ์ธ ์ด๋ฆ„์ด '์—ํฌ๋งˆ์Šคํฌ๋ฆฝํŠธ'๋กœ ์ •ํ•ด์ง ์—ํฌ๋งˆ์Šคํฌ๋ฆฝํŠธ๋Š” ์—…๋ฐ์ดํŠธ ๋  ๋•Œ๋งˆ๋‹ค ์ด๋ฆ„์˜ ๋’ค์— ๋…„๋„๋ฅผ ๋ถ™์ž„(ex. ์—ํฌ๋งˆ์Šคํฌ๋ฆฝํŠธ 2015(ES6๋ผ๊ณ ๋„ ๋ถˆ๋ฆผ)) ์—ํฌ๋งˆ์Šคํฌ๋ฆฝํŠธ๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ‘œ์ค€ํ™”๋œ ์Šคํฌ๋ฆฝํŠธ ์–ธ์–ด์ž„ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š”..