โ TypeScript ๋?
- JavaScript์ ๋ชจ๋ ๋จ์ ์ ๋ณด์ํด ๋ง๋ ์ธ์ด์ด๋ค. (JS์ ํ์ฅ๋ฒ์ )
- ๋์ ์ธ ์๋ฐ์คํฌ๋ฆฝํธ ์ธ์ด์ ํ์
์ ๋ฏธ๋ฆฌ ๋ถ์ฌํจ์ผ๋ก์จ ์ปดํ์ผ ์ ์๋ฌ๋ฅผ ์ก์ ์๊ฐ ์๋ค.
- ๊ฐ์ธ์ ์ธ ์๊ฐ์ผ๋ก TypeScript๋ ์ธ์ด๋ผ๊ธฐ๋ณด๋ค ์๋ฐ์คํฌ๋ฆฝํธ์ ์๋ฌ๋ฅผ ์ฌ์ ์ ๋ฐฉ์งํด์ฃผ๋ ์ฅ์น์ ๊ฐ๋ค๊ณ ๋๊ผ๋ค.
- ์ด์ ๋ ์ฝ๋๋ฅผ ๊ทธ๋๋ก ์ธ ์ ์๋ ๊ฒ์ด ์๋๋ผ ์ปดํ์ผ ์ ์๋ฐ์คํฌ๋ฆฝํธ ํ์ผ์ ๋ง๋ค์ด(transcompiling)์ ํ๊ธฐ ๋๋ฌธ์ด๋ค.
๐ค TypeScript vs JavaScript
1) TypeScript:
- static
- ๊ฐ๋ฐ ๋์ค์ ์๋ฌ๋ฅผ ํ์ธํ ์ ์์
2) JavaScript:
- dynamics
- ๋ฐํ์ ํ ๋๊ฐ ๋ผ์์ผ ์๋ฌ๋ฅผ ๋ฐ๊ฒฌํ ์ ์์
๐ TypeScript ๊ธฐ๋ณธํ์
- number: ์ ์, ์์ ๋ฑ ์ซ์ ํ์
- string: ๋ฌธ์์ด ํ์
- boolean: ๋ถ๋ฆฌ์ ํ์
(์ฐธ, ๊ฑฐ์ง)
- object: ๊ฐ์ฒด ํ์
- symbol: ์ฌ๋ณผ ํ์
- enum: enum ํ์
- any: any ํ์
์ ๋ชจ๋ ๊ธฐ๋ณธ ํ์
์ ์์ ํ์
- tuple: tuple ํ์