- ์ค๋์ ์์ฒด ํ๊ฐ ๋ฐ ๋๋ ์ -
-> ์๋ฒฝ์๋ JS ๊ฐ์๋ฅผ ๋ ์๊ฐํ๋ค. ์ด๋ฒคํธ ์ฒ๋ฆฌ ์ ๊น์ง ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ๋ณต์ฌ, ์ถ๊ฐ, ์ญ์ ๋ฅผ ์ด์ฉํด ์๋ฐ์คํฌ๋ฆฝํธ ์ฝ๋๋ฅผ ์์ฑํ๋ค. ์์ง์ ๋ฐ๋๋ผ JS ์์ฒด ๊ฐ๋ ์ด ๋ฏ์ค์ง๋ง ๊ณ์ ๋ณด๊ณ ์ฐ๋ค๋ณด๋ฉด ์ต์ํด์ง๋ฏ ์ถ๋ค. ์ด์ ๊ฐ๋ ์ ๋ค์ ํ๋ฒ ์ฒ์๋ถํฐ ์ ๋ฆฌํด์ ์ดํดํ๋๋ฐ ํ์คํ ๋ ๋์์ง ๊ธฐ๋ถ์ด์๋ค. ์๋ฒฝํด์ง ๋๊น์ง ๋ฐ๋ณต ใฑใฑ.
-> ์ด์ 1์๊ฐ ์ ๋ ๋ ์ผ์ฐ ์ค๋ค. ๋๋ฌด ํผ๊ณคํ๋๋ผ.. 3์ผ๋ด๋ด 2์ ๋์ด์ ์๋๊น ํผ๋ก๊ฐ ๋์ ๋์๋ ๋ณด๋ค. ์ง๊ฐ๋ฉด์ ์คํฐ๋์ ํ์ด ๋งํ๊ธธ ๋์ด ๋ง์ด ์ถฉํ๋์๋ค๊ณ ํ๊ธธ๋ ๊ทธ๋ ํผ๋ก๊ฐ์ด ํ ๋๊ปด์ก๋ค. ๋ฌด๋ฆฌํ๋ฉด์ ์๊ฐ์ ๋ฒ๋ฆฌ์ง๋ง๊ณ ์์ผ๋ก๋ ํ๋ฆฌํฐ ๊น์ ์๋ฒฝ๊ณต๋ถ๋ฅผ ์งง๊ฒ ํด์ผ๊ฒ ๋ค๋ ์๊ฐ์ ํ๋ค.
์์นจ์ ์ผ์ด๋๋ ์์ฃผ ํผ๊ณคํ๋ค. ์ด์ฐ๋๊ฒ ๋ ๋ง์ด ์๋๊น ๋ ํผ๊ณคํ๋ค.. ์ค๋ ์์นจ ๊ฐ๋ฑ๋ ์ฌ์ ํ๋ค. ๋๊ฐ ๊ฒ์ธ๊ฐ ์ง์ ์์๊น. 1์๋ถํฐ ์๋ฒฝ ์ด๋์ ๊ฐ ์๊ฐ์ธ๋ฐ ์ผ์ด๋ ์ ์์๊น..? ํด์ผ์ง ๊ทธ๋๋
- > ์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ๋ ์ ํ์คํ ์์ต์ ํด์์ธ์ง ์ด๋ ต๊ฒ ๋๊ปด์ง์ง ์์๋ค. ํ์ง๋ง ์ด์ฌํํ๋ฉด ๋ฌด์์ด๋ ๊ฐ๋ฅํ๋ค๊ณ ๋ฏฟ๋๋ค.์ธ๋ฏธํ๋ก์ ํธ ์คํฐ๋์์ด ์ ํด์ก๋ค. ์๊ฐ๋ง ํ๊ณ ์๋ค๊ฐ ๋ง์ ๋ฅ์น๋ ์๊ฐ๋ณด๋ค ํํ๋ ์ด๋ผ๋ ๊ฒ์ ์ฝ์ง ์๋ค. 1๋ช ์ ์์๊ณผ ๋์์ ๋๊ฐ๊ณ .. ์ฌ๊ธฐ์๋ ๋ด๊ฐ ํ์ฅ์ ํด์ผ๊ฒ ๋ค๊ณ ์๊ฐํ๋ค. ๊ทธ๋์ผํ์ด ๊ตด๋ฌ๊ฐ๊ณ ๊ฒฐ๊ณผ๊ฐ ๋์ฌ ๊ฒ ๊ฐ๋ค. ์๊ฐ๋ณด๋ค ๋๊ด์ด ์์ ๊ฒ ๊ฐ์ง๋ง ํน๋ ํ ์ํฉ ์์์๋ ์ข์ ๊ฒฐ๊ณผ๋ฅผ ๋ง๋ค์ด์ผ๊ฒ ๋ค.
- ์ค๋ ๊ณต๋ถ ๊ณํ -
- ์๋ฐ์คํฌ๋ฆฝํธ (๋ด๋ ์ฒ) ๊ฐ์ ์๊ฐ ๋ฐ ์ค์ต 40~?
- ์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ์ ๋ด์ฉ ๋ณต์ต
- ์ผํ๋ชฐ ๊ตฌ์กฐ ๋๊ฐ ๋ถ์ ๋ฐ ์ค์ ์ฌ์ดํธ ๋ค์ฌ๋ค๋ณด๊ธฐ
- ๊ณต๋ถ ๋ด์ฉ -
์๋ฐ์คํฌ๋ฆฝํธ
- CSL (Client Script Language) : ํด๋ผ์ด์ธํธ์ ๋ธ๋ผ์ฐ์ ์์ง์ ์ํด ํด์๋์ด์ง
- Web Document Reading >> HTML Parsing(DOM Parser - DOM Tree) >> JavaScript >> CSS Style ์ ์ฉ >> HTML Rendering(ํ์ด์ง ์ถ๋ ฅ) - ์ด๋ฒคํธ ๋ฐ์ : ๋ฑ๋ก๋ ์ด๋ฒคํธ ํธ๋ค๋ฌ JavaScript ์คํ
- Script ํ๊ทธ : ์คํฌ๋ฆฝํธ ์ธ์ด๋ฅผ ์ฌ์ฉํ์ฌ ํ๋ก๊ทธ๋จ ์์ฑํ๋ ์์ญ ์ ๊ณต ⇒ script ํ๊ทธ๊ฐ ์ฌ๋ฌ๊ฐ ์ ์ธ ๋ ๊ฒฝ์ฐ ์์ฐจ์ ์ผ๋ก ์คํ
- ์๋ฐ์คํฌ๋ฆฝํธ๋ ํ ์ค์ ์์ฑ๋ ์ฝ๋๋ฅผ ํ๋์ ๋ช ๋ น์ผ๋ก ์ธ์ํ์ฌ ์ฒ๋ฆฌ ⇒ ๋ช ๋ น ๋ง์ง๋ง์ ; ์๋ต ๊ฐ๋ฅ
- ์๋ฐ์คํฌ๋ฆฝํธ๋ ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ์ผ๋ก ๊ฐ์ฒด๋ฅผ ์ด์ฉํ์ฌ ํ๋ก๊ทธ๋จ์ ์์ฑํ๋ฉฐ ๊ฐ์ฒด์ ์์ฑ(Property)๊ณผ ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ํ๋ก๊ทธ๋จ ์์ฑ
- ์๋ฐ์คํฌ๋ฆฝํธ๋ ๋ธ๋ผ์ฐ์ ๋ฅผ window ๊ฐ์ฒด๋ก ํํํ์ฌ ์์ฑ๊ณผ ๋ฉ์๋ ์ ๊ณต ⇒ window ๊ฐ์ฒด ํํ ์๋ต ๊ฐ๋ฅ
- ์น๋ฌธ์์ DOM Tree๋ฅผ ์กฐ์ํ๋ ๊ฒฝ์ฐ bodyํ๊ทธ์ ๋ง์ง๋ง ์์ ํ๊ทธ๋ก ์ ์ธํ๋ ๊ฒ์ด ๊ถ์ฅ
- ํ๊ทธ์ onxxx ์์ฑ (์ด๋ฒคํธ ์์ฑ)์ ์์ฑ๊ฐ์ผ๋ก ์ด๋ฒคํธ ์ฒ๋ฆฌ ๋ช ๋ น ์์ฑ ํ์) onXXX="javascript:์๋ฐ์คํธ๋ฆฝํธ ๋ช ๋ น; ์๋ฐ์คํธ๋ฆฝํธ ๋ช ๋ น; ...; “ => javascript ์์ญ(NameSpace) ํํ ์๋ต ๊ฐ๋ฅ
- ๋ฌธ์๊ฐ + ์ฐ์ฐ์ ์ฌ์ฉ ์ ๋ฌธ์๊ฐ ๊ฒฐํฉ ๊ธฐ๋ฅ ์ ๊ณต
- ๋ณ์์ ์ ์ฅ๋ ๊ฐ์ด ์๋ ๋ณ์์ ์๋ฃํ์ undefined๋ก ์๋ ์ค์
- ๋์ผํ ์ด๋ฆ์ ๋ณ์ ์ ์ธ ๊ฐ๋ฅ
- ๋ณ์๋ ์ ์ธํ์ง ์์๋ ์ฌ์ฉ ๊ฐ๋ฅ
- ๊ฐ์ด ์ ์ฅ๋์ด ์์ง ์์ ๋ฏธ์ ์ธ๋ ๋ณ์ ์ฌ์ฉ์ ์๋ฌ ๋ฐ์
- var ํค์๋๋ฅผ ์ฌ์ฉํ์ฌ ๋ณ์ ์ ์ธ - ๋ณ์ ๊ฐ ๋ณ๊ฒฝ์ด ๊ฐ๋ฅํ๋ฉฐ ์ฌ์ ์ธ ๊ฐ๋ฅ
- let ํค์๋๋ฅผ ์ฌ์ฉํ์ฌ ๋ณ์ ์ ์ธ - ๋ณ์๊ฐ ๋ณ๊ฒฝ์ด ๊ฐ๋ฅํ๋ฉฐ ์ฌ์ ์ธ ๋ถ๊ฐ๋ฅ
- const ํค์๋๋ฅด ์ฌ์ฉํ์ฌ ๋ณ์ ์ ์ธ - ๋ณ์๊ฐ ๋ณ๊ฒฝ์ด ๋ถ๊ฐ๋ฅํ๋ฉฐ ์ฌ์ ์ธ ๋ถ๊ฐ๋ฅ ⇒ ์์ ์ ์ธํ ๊ฒฝ์ฐ ์ฌ์ฉ
- var ๋ณ์๋ ํจ์๋ฅผ ๊ธฐ์ค์ผ๋ก ์์ญ์ด ํ์๋์ง๋ง let, const๋ ์์ญ์ผ๋ก ๊ตฌ๋ถ์ด ๋จ.
- ์๋ฃํ
- ๋ฌธ์ํ(String)
- ์ซ์ํ(Number)
- ๋ ผ๋ฆฌํ(Boolean)
- ํจ์ํ(Function) : ๋ช ๋ น(Statement)์ ๋ชจ์์ ํํํ๋ ์๋ณ์
- ๊ฐ์ฒดํ(Object) : ์์ฑ๊ณผ ๋ฉ์๋์ ๋ชจ์
- undefined : ๊ฐ์ ํํํ ์ ์๋ ๊ฒฝ์ฐ ์ฌ์ฉ๋๋ ์๋ฃํ
- ์๋ฐ์คํฌ๋ฆฝํธ ์ฐ์ฐ์
- ์ต์ฐ์ ์ฐ์ฐ์ : () [] {} .
- ๋จํญ ์ฐ์ฐ์ : + - ++ - - ! new typeof
- ์ฐ์ ์ฐ์ฐ์ : * / % + -
- ๊ด๊ณ ์ฐ์ฐ์ : > >= <= == === ≠ ≠=
- ๋ ผ๋ฆฌ ์ฐ์ฐ์ : & & ||
- ๋์ ์ฐ์ฐ์ : = *= /= %= += -=
- ์๋ฐ์คํฌ๋ฆฝํธ ํ๋ณํ
- ์๋ ํ๋ณํ
- ⇒ ๋ ผ๋ฆฌ ๊ฐ ์ฐ์ฐ์ ์ซ์ํ ๋ณํ ํ ์ฐ์ฐ ์ฒ๋ฆฌ
- ⇒ ํ๋ฌ์ค ์ฐ์ฐ์๋ง ๋ฌธ์์ด ์ฒ๋ฆฌํ๊ณ ๋๋จธ์ง๋ ์ซ์๋ก ํ๋ณํ ํ ์ฐ์ฐ ์ฒ๋ฆฌ
- ๊ฐ์ ํ๋ณํ
- ์๋ฐ์คํฌ๋ฆฝํธ ํจ์(Function)
- ํจ์ : ๊ฐ์ ์ ๋ฌ๋ฐ์ ์ฒ๋ฆฌํ๋ ๋ช ๋ น์ ๋ชจ์ - ๊ธฐ๋ฅ ๊ตฌํ
- ํจ์ ์ ์ธ ํ ํจ์ ํธ์ถ์ ํตํด ํจ์์ ์์ฑ๋ ๋ช ๋ น ์คํ - ๊ธฐ๋ฅ ๊ตฌํ
- ํจ์๋ ์ ์ธ ๋ฐฉ๋ฒ์ ๋ฐ๋ผ ์ ์ํจ์์ ์ต๋ช ํจ์๋ก ๊ตฌ๋ถ
- ์ ์ ํจ์ : ํจ์๋ช ์ ์์ฑํ์ฌ ์ ์ธํ๋ ํจ์
- ์ต๋ช ํจ์ : ํจ์๋ช ์ ๋ช ์ํ์ง ์๊ณ ์์ฑํ์ฌ ์ ์ธํ๋ ํจ์ -์ด๋ฒคํธ ์ฒ๋ฆฌ์ฉ
- ํจ์๋ ๋ฐ๋ณต ํธ์ถ ๊ฐ๋ฅ
- ๋ณ์์ ํจ์(์ต๋ช ํจ์) ์ ์ฅ ๊ฐ๋ฅ - ํจ์ ๋ณ์
- ์ ์ธํจ์๋ ํจ์ ์ ์ธ ์ ์ ํธ์ถ ๊ฐ๋ฅ - ํจ์๋ ๋ช ๋ น ์คํ ์ ๋ฏธ๋ฆฌ ์ ์ธ ์ ๋ฏธ๋ฆฌ ์์ฑ
- ์ ์ญ๋ณ์์ ์ง์ญ๋ณ์
- ์ ์ญ๋ณ์: ํจ์ ์ธ๋ถ์์ ์ ์ธ
- ์ง์ญ๋ณ์ : ๋ด๋ถ์์ ์ ์ธ
- ํจ์์ ๋งค๊ฐ๋ณ์
- ํจ์์ ๋ช ๋ น ์คํ์ ํ์ํ ๊ฐ์ ํจ์ ํธ์ถ ์ ์ ๋ฌ๋ฐ์ ์ ์ฅํ๊ธฐ ์ํจ
- ๋งค๊ฐ๋ณ์๋ var ํค์๋๋ก ๋ณ์๋ฅผ ์ ์ธํ์ง ์์๋ ์ง์ญ๋ณ์๋ก ์ฒ๋ฆฌ
- ํจ์์ ๋งค๊ฐ๋ณ์์ ์ฐจ๋ก๋๋ก ๊ฐ์ ์ ๋ฌํด์ผ ํจ์ ํธ์ถ
- ํจ์ ์ ์ธ์ ์์ฑ๋ ๋งค๊ฐ๋ณ์์ ๊ฐฏ์๋ณด๋ค ์ ์ ๊ฐฏ์์ ๊ฐ์ ์ ๋ฌํ์ฌ ํจ์ ํธ์ถ ๊ฐ๋ฅ = > ๊ฐ์ ์ ๋ฌ๋ฐ์ง ๋ชปํ ๋งค๊ฐ๋ณ์์๋ undefined ์๋ฃํ์ ๋ณ์๋ก ํํ - ๋น์ ์์
- ํจ์ ์ ์ธ ์ ์์ฑ๋ ๋งค๊ฐ๋ณ์์ ๊ฐฏ์๋ณด๋ค ๋ง์ ๊ฐฏ์์ ๊ฐ์ ์ ๋ฌํ์ฌ ํจ์ ํธ์ถ ๊ฐ๋ฅ ⇒ ๋งค๊ฐ๋ณ์์ ์ฐจ๋ก๋๋ก ๊ฐ์ด ์ ๋ฌ๋์ด ์ ์ฅ๋๋ฉฐ ๋๋จธ์ง ๊ฐ์ ์๋ ๋ฏธ์ฌ์ฉ
- ๋งค๊ฐ๋ณ์์ ์๊ด์์ด ํจ์๋ช ์ ์ฌ์ฉํ์ฌ ํจ์ ํธ์ถ ๊ฐ๋ฅ
- ํจ์์๋ ํจ์ ํธ์ถ ์ ์ ๋ฌ๋๋ชจ๋ ๊ฐ์ ์ ์ฅํ๋ arguments ๊ฐ์ฒด (Array ๊ฐ์ฒด - ๋ฐฐ์ด) ์กด์ฌ ์๋ฃํ : Object
- arguments[index] : arguments ๊ฐ์ฒด์ ์ ์ฅ๋ ๊ฐ์ ํํ (๋ฐฐ์ด ์์)
- Return
- ํจ์๋ฅผ ์ข ๋ฃํ๊ธฐ ์ํ ๋ช ๋ น - ํจ์ ๋ด๋ถ๊ฐ์ ๋ฐํํ๋ ๊ธฐ๋ฅ ์ ๊ณต
- ๋ด๋ถํจ์(Inner Function)
- ๋ด๋ถ ํจ์ : ํจ์ ๋ด๋ถ์ ์ ์ธ๋ ํจ์- ์ ์ธ๋ ํจ์ ๋ด๋ถ์์๋ง ํธ์ถ ๊ฐ๋ฅ
- ๋์ผํ ์ด๋ฆ์ ํจ์ ์ ์ธ - ๊ธฐ์กด ํจ์ ๋ฎ์ด์์ฐ๊ธฐ(OverWrite)
- ์ฝ๋ฐฑํจ์(Callback Function)
- ํจ์์ ๋งค๊ฐ๋ณ์์ ํจ์๋ฅผ ์ ๋ฌ๋ฐ์ ์ ์ฅํ๊ณ ํธ์ถ ํจ์์์ ๋ด๋ถ์์ ๋งค๊ฐ๋ณ์๋ก ์ ๋ฌ๋ฐ์ ํจ์๋ฅผ ํธ์ถํ์ฌ ์คํ
- ํจ์๋ช ์ ํจ์๋ฅผ ๊ตฌ๋ถํ๊ธฐ ์ํ ์๋ณ์
- ํจ์๋ช ์ ์๋ณ์๋ก ๋ด๋ถ์ ์ผ๋ก ๋ณ์์ฒ๋ผ ์ฒ๋ฆฌ - ํจ์ ์ ์ฅ
- ์๋ฃํ์ function
- ํจ์๋ฅผ ์ ์ธํ์ฌ ๋ณ์ ์ ์ฅ - ํจ์๋ณ์
- ๋ณ์์ ํจ์ ์ ์ฅ ๊ฐ๋ฅ
- ์คํฐ๋ ๊ณํ ๋ฐ ๊ฒฐ๊ณผ -
=> ์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ์ ๋ด์ฉ ๋ณต์ต
=> ์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ๋ ์ ์ด์ฉํ ์๋ก์ด ๋ฌธ์ ์ถ์ ๋ฐ ๊ฐ์ ํ์ด๋ณด๊ธฐ
'Front' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
2021.12.22์ ๊ธฐ๋ก (0) | 2021.12.22 |
---|---|
2021.12.21์ ๊ธฐ๋ก (0) | 2021.12.21 |
2021.12.18~12.19์ ๊ธฐ๋ก (2) | 2021.12.19 |
2021.12.17์ ๊ธฐ๋ก (0) | 2021.12.17 |
2021.12.16์ ๊ธฐ๋ก (2) | 2021.12.17 |