๐Ÿ›  JavaScript Essential - 2. nodeJS์™€ TypeScript์— ๋“ฑ์žฅ

์ด์ถ˜๊ธธยท2021๋…„ 10์›” 17์ผ
0
post-thumbnail

๐Ÿฑโ€๐Ÿ ๋ชฉํ‘œ

  • nodeJS์— ๋Œ€ํ•˜์—ฌ ๊ฐ„๋žตํ•œ ์ •๋ฆฌ
  • TypeScript์— ํ•„์š”์„ฑ

๐Ÿ“Œ 1. nodeJS

1) ํƒ„์ƒ

  1. ๊ตฌ๊ธ€์€ ํฌ๋กฌ ๋ธŒ๋ผ์šฐ์ €๋ฅผ ๋ฐœํ‘œํ•œ๋‹ค.
  2. ๋น ๋ฅธ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰์„ ํ•  ์ˆ˜ ์žˆ๋Š” ์˜คํ”ˆ ์†Œ์Šค์ธ V8 ์—”์ง„๋„ ๊ณต๊ฐœํ•œ๋‹ค.
  3. ๋ผ์ด์–ธ ๋‹ฌ(NodeJS ๊ฐœ๋ฐœ์ž) : "V8 ์—”์ง„์ด ์žˆ์œผ๋ฉด ๋‹ค๋ฅธ ํ™˜๊ฒฝ์—์„œ๋„ JS๋ฅผ ๋Ÿฐํƒ€์ž„ ํ•  ์ˆ˜ ์žˆ๊ฒ ๋‹ค."
  4. 2009๋…„ 05์›” 27์ผ NodeJS๋ฅผ ๋ฐœํ‘œํ•œ๋‹ค.

2) ํ…Œ์ŠคํŠธ

  1. nodeJS LTS ๋ฒ„์ „ ์„ค์น˜
  2. ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ
// index.js
console.log('Hello World');
  1. ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์•„๋‹Œ ๋กœ์ปฌ์—์„œ JS ์ฝ”๋“œ ์‹คํ–‰
node index.js
Hello World

๐Ÿ“Œ 2. nvm

  • nodejs ๋ฒ„์ „ ๊ด€๋ฆฌ์ž
  • ์‚ฌ์šฉ์ž ๋ณ„ ์„ค์น˜, ์…€๋ณ„๋กœ ํ˜ธ์ถœ
  • ๋‹ค์–‘ํ•œ OS ์ง€์›
  • node ๋ฒ„์ „์„ ๋ณ€๊ฒฝํ•˜๋ฉด์„œ ์‚ฌ์šฉํ•  ๋•Œ ์œ ์šฉ

1) ์„ค์น˜ ๋ฐ ํ…Œ์ŠคํŠธ

1. ๊ธฐ์กด์— ์„ค์น˜๋œ nodeJS ์ œ๊ฑฐ

2. nvm ์„ค์น˜

3. ์„ค์น˜ ํ™•์ธ - CMD

nvm version 

4. nodeJS ๋ฒ„์ „ ์„ค์น˜

nvm install 14.18.1

5. ์„ค์น˜ ๋ฒ„์ „ ์‚ฌ์šฉ

nvm use 14.18.1

6. ํ˜„์žฌ ์‚ฌ์šฉ ๋ฒ„์ „ ํ™•์ธ

ํ˜„์žฌ ์‚ฌ์šฉ ๋ฒ„์ „ ํ™•์ธ

7. ์‚ฌ์šฉ ๋ช…๋ น์–ด ์ •๋ฆฌ

1. nvm install [version] // ์‹ ๊ทœ ๋ฒ„์ „ ์„ค์น˜
2. nvm use [version] // ํ•ด๋‹น ๋ฒ„์ „์œผ๋กœ ์‚ฌ์šฉ
3. nvm list // ์„ค์น˜๋œ ๋ฒ„์ „ ํ™•์ธ
4. nvm ls // ํ˜„์žฌ ์‚ฌ์šฉ ์ค‘์ธ ๋ฒ„์ „ ์ •๋ณด ํ™•์ธ

๐Ÿ“Œ 3. TypeScript

  • JavaScript๊ฐ€ ์ง€์›ํ•˜์ง€ ์•Š๋Š” Type ์ •์˜ ์ œ๊ณต
  • JavaScript์— ์Šˆํผ์…‹์ธ 'TypeScript'
    TypeScript compiles to js
  • Type ์ •์˜๋ฅผ ํ†ตํ•ด ์—๋Ÿฌ ์‚ฌ์ „ ์ฐจ๋‹จ
  • Type ์ •์˜๋ฅผ ํ†ตํ•œ ํ‘œํ˜„๋ ฅ ๊ฐ•ํ™”
type Centimeter = number;
type RainbowColor = 'red' | 'orange' | 'yellow' | 'green' | 'blue' | 'indigo' | 'purple';

let height: Centimeter = 176;
let color: RainbowColor = 'orange';
   
color = 'black'; // error

์ฐธ๊ณ 

ํŒจ์ŠคํŠธ์บ ํผ์Šค ๊น€๋ฏผํƒœ์˜ ํ”„๋ก ํŠธ์—”๋“œ ์•„์นด๋ฐ๋ฏธ
ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ_์ด๋ฏธ์ง€

profile
์ผ์ง€๋ฅผ ๊พธ์ค€ํžˆ ์ž‘์„ฑํ•˜์ž.

0๊ฐœ์˜ ๋Œ“๊ธ€