javascript๋ Dynamic type๋ค์ ์ฌ์ฉํ๋ ๋ฐ๋ฉด typescirpt๋ Static type๋ค์ ์ฌ์ฉํ๋ค.
Static type์ ๊ฐ๋ฐํ๋ ์ค๊ฐ์ type์ ์ฒดํฌํ๋ค.
Dynamic type์ ๊ฐ๋ฐํ๋ ๋์ค์๋ ์ ์ ์๊ณ runtime์ ๋์
ํด์ผ์ง๋ง ์๋ชป๋ ๊ฒ์ ์ ์ ์๋ค.
1
2
3
|
let a: number
// ๋ณ์๊ฐ ์ด๋ค ํ์
์ธ์ง๋ฅผ ์ง์ ํด์ฃผ๋ ๊ฒ์ type annotation์ด๋ผ๊ณ ํ๋ค.
// typescript์์๋ javascript์ ๋ค๋ฅด๊ฒ ํ์
์ ์ง์ ํ ์ ์๋ค.
|
cs |
typecript์์๋ let a = 'Hello'์ ๊ฐ์ด ๋ณ์ ์์ฑ์ ์ด๊ธฐ๊ฐ์ ํ ๋นํด์ฃผ๋ฉด ๋ณ์์ type์ด ์ ํด์ง๊ฒ ๋๊ณ ํด๋น type์ด ์๋ ๋ค๋ฅธ type์ ๊ฐ์ ์ฌํ ๋นํ๋ ค๊ณ ํ๋ฉด ์๋ฌ๊ฐ ๋ฐ์ํ๋ค.
let a; ์ ๊ฐ์ด ์ด๊ธฐ๊ฐ์ ํ ๋นํด์ฃผ์ง ์์ผ๋ฉด ์๋์ ์ผ๋ก type์ด Any๋ก ์ค์ ๋๋ฉฐ ์ด๋ ํ type์ ๊ฐ๋ ์ฌํ ๋นํ ์ ์๋ค.
1
2
3
4
5
6
7
8
9
10
11
12
|
//javascript
function add(n1, n2) {
if ( typeof n1 !== 'number' || typeof n2 !== 'number' ) { //๋ฐํ์์ ์ฒดํฌ
throw new Error( 'Incorrect input! ' );
}
return n1 + n2;
}
//typescript
function add(n1: number, n2: number) { //๊ฐ๋ฐ์ค์ ์ฒดํฌ
return n1 + n2;
}
|
cs |
TypeScript์์ ์ ๊ณตํ๋ ๊ธฐ๋ณธ ๋ฐ์ดํฐ ํ์
1. JavaScript ๊ธฐ๋ณธ ์๋ฃํ์ ํฌํจ
โถ Boolean
โถ Number
โถ String
โถ Null
โถ Undefined
โถ Symbol
โถ Array: objectํ
2. ํ๋ก๊ทธ๋๋ฐ์ ๋์ธ ๋ช ๊ฐ์ง ํ์
์ด ์ถ๊ฐ๋ก ์ ๊ณต
โถ Any, Void, Never, Unknown
โถ Enum
โถ Tuple: objectํ
'๊ฐ๋ฐ > HTML, CSS, JS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฒ๋ค๋ฌ ๊ฐ์ (0) | 2023.02.13 |
---|---|
JavaScript Essentials (0) | 2023.02.05 |
BEM (0) | 2023.01.13 |
๋ฉ์๋ ์ฒด์ด๋(Method Chaining) (0) | 2023.01.12 |
DOM API (0) | 2023.01.12 |