[ํด๋ผ์ฐ๋ฉ ์ดํ๋ฆฌ์ผ์ด์ ์์ง๋์ด๋ง TIL] 240104 - JavaScript ๋ค์ด๊ฐ๊ธฐ ์
Intro...
์ด์ ๊น์ง ํด์ HTML/CSS ๊ฐ์๊ฐ ๋์ด๋๊ณ , ์ค๋๋ถํฐ ์๋ก์ด ๊ฐ์ฌ๋์ JS ๊ฐ์๋ฅผ ๋ค์๋ค.
JavaScript ๊ฐ๋จ ์๊ฐ๋ถํฐ ์์ผ๋ก ๋ฌด์ผ ๋ฐฐ์ธ ์ง์ ์๋ฐ์คํฌ๋ฆฝํธ, ECMA ํ์ ๋ฐฐ๊ฒฝ์ ๋ํด ํ์ตํ๋ค.
์ค๋ ํ์ตํ ๋ด์ฉ
์๋ฐ์คํฌ๋ฆฝํธ ํ์ต ๋ชฉํ
: ์ ์ ์ Pain Point(์๋น์๊ฐ ๋ถํธ, ๋ถ์, ๊ณ ํต์ ๋๋ผ๋ ์ง์ )๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด
โก๏ธ ์๋น์ค๋ฅผ ๋ง๋ ๋ค.
์๋น์ค๋ฅผ ๋ง๋ค๊ธฐ ์ํด
โก๏ธ ์น ๊ฐ๋ฐ์ ๋ฐฐ์ด๋ค.
์น์ ๊ฐ๋ฐํ๊ธฐ ์ํด
โก๏ธ JavaScript๋ฅผ ๋ฐฐ์ด๋ค.
๋ธ๋ผ์ฐ์ ์ ๋๋ฒ๊น - console
- console.log: ์ ๋ ฅํ ๊ฐ์ ์ฝ์์ ํ์ค ํ์ค ์ถ๋ ฅ
- console.dir: ์ฃผ์ ๋ ๊ฐ์ ๋ชจ๋ ์์ฑ์ ํ์ธํ ๋
- console.table: ํ ํ์์ ๋ฐ์ดํฐ๋ฅผ ํ ์ด๋ธ๋ก ํํ
์๋ฐ์คํฌ๋ฆฝํธ ํน์ง
- ์ธํฐํ๋ฆฌํฐ ์ธ์ด
- ๋ณํํ๋ ๊ณผ์ ์ ๊ฑฐ์น์ง ์๊ณ ์คํ, ์คํํ๋ฉด์ ๊ธฐ๊ณ์ด๋ก ๋ณํํ๋ฉฐ ์งํํ๋ค.
- => ์ปดํ์ผ ๋จ๊ณ๊ฐ ์์ผ๋, ์ปดํ์ผ๋ฌ ์ธ์ด์ ๋นํด ์คํ ์๋๊ฐ ๋๋ฆฌ๋ค.
- ๋์ ํ์
์ธ์ด
- ๋ณ์์ ๋ค์ด๊ฐ๋ ๊ฐ์ ๋ฐ๋ผ ๋ฐํ์ ์ ํ์ ์ถ๋ก
- ์ผ๊ธ ๊ฐ์ฒด
- ํจ์๋ ์ผ๊ธ ๊ฐ์ฒด์ ํน์ฑ์ ๊ฐ์ง๋ค.
- ํจ์๋ ๊ฐ์ฒด์ ๋์ผํ๊ฒ ์ฌ์ฉ
- ํจ์๋ ๊ฐ๊ณผ ๋์ผํ๊ฒ ์ทจ๊ธ (๋ณ์ ํ ๋น๋ฌธ, ๊ฐ์ฒด ํ๋กํผํฐ ๊ฐ, ๋ฐฐ์ด์ ์์, ํธ์ถ์ ์ธ์, ํจ์ ๋ฐํ๋ฌธ)
- ํ๋กํ ํ์
๊ธฐ๋ฐ์ ์์
- ์๋ฐ์คํฌ๋ฆฝํธ ์ธ์ด๊ฐ ๊ฐ๊ณ ์๋ ํ๋กํ ํ์ ์ฒด์ด๋ ๊ตฌ์กฐ๋ฅผ ํตํด ์์ ๊ฐ๋ฅ
- ์ฌ๋ฌ ํ๋ก๊ทธ๋๋ฐ ํจ๋ฌ๋ค์ ์ง์
- ๋ช ๋ นํ ํ๋ก๊ทธ๋๋ฐ
- ํจ์ํ ํ๋ก๊ทธ๋๋ฐ
- ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ
- ...
JavaScript ํ์ ๋ฐฐ๊ฒฝ๊ณผ ECMAScript
- ์์ฌ ์ํํธ์จ์ด ์ฌ์ฉ์ ์ ์ ์จ์ ๋์ด๊ธฐ ์ํด ๋ธ๋ผ์ฐ์ ๋ง๋ค ๋์ํ๋ ๊ธฐ๋ฅ์ ๊ฒฝ์์ ์ผ๋ก ์ถ๊ฐํ๋ค.
โก๏ธ ๊ฐ์ ์๋ฐ์คํฌ๋ฆฝํธ ํ์ผ์ธ๋ฐ IE์์ ๋์ํ๊ณ , Netscape์์๋ ๋์ํ์ง ์๋ ํ์์ด ๋ฐ์ํ๋ค. (ํฌ๋ก์ค ๋ธ๋ผ์ฐ์ง ์ด์)
- ๋ชจ๋ ๋ธ๋ผ์ฐ์ ์์ ์๋ฐ์คํฌ๋ฆฝํธ๋ ๋์ผํ๊ฒ ๋์ํด์ผ ํ๋ค.
โก๏ธ ECMA ์์ฒญ, ํ์คํ ์์ ์งํ
ECMAScript2015
: 2009๋ ๋ถํฐ ์งํํ ์์ ์ด๋ฉฐ ๋๊ท๋ชจ ์ดํ๋ฆฌ์ผ์ด์ , ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์์ฑ, ๋ค๋ฅธ ์ธ์ด์ ์ปดํ์ผ์ ๋์์ผ๋ก ์ฌ์ฉํ๋๋ฐ ์ฉ์ดํ๊ฒ ํ๊ธฐ ์ํ ๋ชฉํ๋ก ์์ ํ์๋ค.
๋ชจ๋,ํด๋์ค ์ ์ธ, ๋ธ๋ก๋ ๋ฒจ ์ค์ฝํ, iterator์ generator, ๋น๋๊ธฐ ํ๋ก๊ทธ๋๋ฐ, promise, ๊ตฌ์กฐ๋ถํด ํจํด ๋ฑ์ ๊ฐ์ ์ด ์กด์ฌํ๋ค.
โ ๏ธ ๋ธ๋ผ์ฐ์ ๋ฒ์ ๋ง๋ค ์ง์ํ๋ JS ์คํ์ด ์์ดํ๋ฐ, ๊ฐ๋ฐ์์ ์ฌ์ฉํ๊ณ ์ถ์๋ฐ ํด๋น ๋ธ๋ผ์ฐ์ ์ง์์ด ์ ๋ ๊ฒฝ์ฐ..
- polyfill
- ์ง์ํ์ง ์๋ ๋ธ๋ผ์ฐ์ ์์ ์ต์ ๊ธฐ๋ฅ์ ์ ๊ณตํ๊ธฐ ์ํด ํ์ํ ์ฝ๋
- ํด๋ฆฌํ์ ๋ธ๋ผ์ฐ์ ๊ฐ ๋ค๋ฅธ ๋ฐฉ์์ผ๋ก ๋์ผํ ๊ธฐ๋ฅ์ ๊ตฌํํ๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐ ์ฌ์ฉํ๋ค.
- Babel
- ์ด์ ๋ฒ์ ์ ๋ธ๋ผ์ฐ์ ์์ ES6 ์ด์ ๋ฒ์ ์ JavaScript๋ก ๋ณํํ๋ ๋ฐ ์ฌ์ฉํ๋ ๋๊ตฌ
- ๋ฌธ๋ฒ์ ๋ฒ์ญ ๋ฐ ๋ฐํ
- ํด๋ฆฌํ ๊ธฐ๋ฅ ์ง์
๋๋ณด๊ธฐ)
ํด๋ฆฌํ
ko.javascript.info
๋ง๋ฌด๋ฆฌ
์ค๋์ ๋๋ฌด ํผ๊ณคํด์ ์ง์์ ๋์ ์นดํ์์ ๊ณต๋ถํ๋ค. ๋ ์ง์ค์ด ์๋๋ ๋๋์ด๋ค.
๋คํํ ์ค๋๊น์ง๋ ํฌ๊ฒ ์ด๋ ค์ด ๋ด์ฉ์ด ์์ด์ ์์ํ๊ฒ ํ์ตํ๋ค. ๐
๋ด์ผ๋ ํ์ดํ !!