" ๋ฉ์ธ ํ๋ก์ ํธ ๋, TypeScript๋ก ํ๋ก์ ํธ๋ฅผ ์งํํ๋ ค ํ์ผ๋, ์ด๋ฐ์ ๋ฐ ์ฌ์ (๋ฉํ ๋์ ์กฐ์ธ, ์์ํ ๊ฐ๋ฐ ์ธ์ด ๋ฑ) ๋๋ฌธ์ JavaScript๋ก ์งํํ์๋ค. ํ์ฌ ๋ฉ์ธ ํ๋ก์ ํธ๊ฐ ๋๋ ์ง๊ธ, ๋ค์ ํ๋ก์ ํธ๋ TypeScript๋ฅผ ์ฐ๊ธฐ ์ํด ๊ณต๋ถํ ์ ์๋ ์
ํจ์ ์์ ๋ง์ฐ์ค๋ฅผ ์ฌ๋ ค๋์์ ๋ ๋ณผ ์ ์๋๋ฐ, ํจ์์ ์ธ์(arguments)ํ์ ๊ณผ & ๋ฐํํ์ ์ ์๋ ค์ค๋ค.ex) const add: (a: number, b: number) โ number์ค๋ฒ๋ก๋ฉ์ ํจ์๊ฐ ์๋ก ๋ค๋ฅธ ์ฌ๋ฌ ๊ฐ์ Call Signatures๋ฅผ ๊ฐ์ง
TypeScript์์๋ง ์ฌ์ฉํ ์ ์๋ TypeScript๋ง์ ๋ณดํธ๊ธฐ๋ฅ(JavaScript์์๋ ์ฌ์ฉ ๋ถ๊ฐ)private ํค์๋ : ์ ์ธํ ํด๋์ค ๋ด์์๋ง ์ ๊ทผ ๊ฐ๋ฅprotected ํค์๋ : ์ ์ธํ ํด๋์ค ๋ด + ์์๋ฐ์ ํด๋์ค ๋ด์์ ์ ๊ทผ ๊ฐ๋ฅpublic ํค์๋
tsconfig.json ํ์ผ์ allowJS : true๋ฅผ ์ถ๊ฐํ๋ค.@ts-check ์๋ ์ฝ๋ฉํธ๋ฅผ ์์ฑํ๋ฉด โ JS ํ์ผ์ ์ฝ๋์ ๋ํด์๋ ํ์ ์ ์ง์ ํ ์ ์๋ค.์ด๋ ๋งค์ฐ ํ์ ์ ์ธ ๋ฐฉ๋ฒ์ธ๋ฐ, ๋ง์ฝ ์ฌ๋ฌ ์ฌ๋๊ณผ ํ์ ์ ํ๊ฑฐ๋, ๊ธฐ์กด์ ์๋ JS ํ์ผ์ TS ํ๋ก์ ํธ