타입스크립트 기초-변수와 함수 타입 정의하기
18313 단어 typescripttypescript
기본타입
🔹String
JS에서 문자열
let str = 'hello';
TS에서 문자열
let str: string = 'hello';
TIP
위와같이 :
를 이용하여 자바스크립트 코드에 타입을 정의하는 방식을 타입표기(Type Annotation)이라고 한다.
🔹 Number
let num: number = 10;
🔹 Array
배열 타입이고 숫자만 들어 갈수 있다.
let arr: Array<number> = [1,2,3];
let items: number[] = [1,2,3];
배열 타입이고 문자만 들어 갈수 있다.
let arrStr: Array<string> = ['one','two','three'];
let items: string[] = ['one','two','three'];
정해준 type과 다를 경우 오류를 보여준다.
🔹 Tuple
let address: [string,number] = ['gangnam',100];
- 모든 index에 타입을 정해준다.
- 만약 정의 하지 않은 타입, 인덱스로 접근할 경우 오류가 난다.
🔹 Object
let obj: object = {}
// 튜플로 작성하기
let person: {name:string, age:number} = {
name: 'young',
age:26
}
- 변수명에 마우스를 호버했을때 정의해준 타입을 알려준다.
🔹 Boolean
let show: boolean = true;
🔹 Any
- 모든 타입에 대해서 허용한다.
let str: any = 'hi';
let num: any = 10;
let arr: any = ['a',2, true]
2020.11.16추가
🔹 Void
- 변수에는
undefined
와 null
만 할당하고, 함수에는 반환 값을 설정할 수 없는 타입이다.
let unuseful: void = undefined;
function notuse(): void {
console.log('sth');
}
2020.11.16추가
🔹 Enums
- C, Java와 같은 다른 언어에서 흔하게 쓰이는 타입으로 특정 값들의 집합을 의미한다.
enum Colors {Red, Liem, Yellow}
let color: Colors = Colors.Red;
- 인덱스 번호로도 접근할 수 있다.
enum Colors {Red, Liem, Yellow}
let color: Colors = Colors[0];
- 이넘의 인덱스를 사용자 편의로 변경사용 가능.
enum Colors {Red = 2, Liem, Yellow}
let color: Colors = Colors[2]; // Red
let color: Colors = Colors[4]; // Yellow
Enums 자세히 보기
함수타입
🔹 파라미터
함수의 파라미터에 타입을 정의하는 방식
function sum(a:number, b: number) {
return a + b
}
sum(2,3) // 5
함수의 타입을 정의하는 방식
function sum(a:number, b: number): number {
return a + b
}
sum(2,3) // 5
🔹 반환값
함수의 반환 값에 타입을 정의하는 방식
function add(): number {
return 20;
}
🔹 파라미터를 제한하는 특성
function func(a:number, b:number): number {
return a + b;
}
func(10, 20); // 30
func(10,20,30,40) // error, too many parameters
func(10) // error, too few parameters
정의된 매개 변수 값을 초과할 경우 오류가 난다.즉 받을수가 없다.
🔹 옵셔널 파라미터
function log(a:string , b:string){
console.log(`a:${a}, b:${b}`);
}
log('hello world'); // error, too few parameters
let str = 'hello';
let str: string = 'hello';
TIP
위와같이 :
를 이용하여 자바스크립트 코드에 타입을 정의하는 방식을 타입표기(Type Annotation)이라고 한다.
let num: number = 10;
let arr: Array<number> = [1,2,3];
let items: number[] = [1,2,3];
let arrStr: Array<string> = ['one','two','three'];
let items: string[] = ['one','two','three'];
정해준 type과 다를 경우 오류를 보여준다.
let address: [string,number] = ['gangnam',100];
let obj: object = {}
// 튜플로 작성하기
let person: {name:string, age:number} = {
name: 'young',
age:26
}
let show: boolean = true;
let str: any = 'hi';
let num: any = 10;
let arr: any = ['a',2, true]
undefined
와 null
만 할당하고, 함수에는 반환 값을 설정할 수 없는 타입이다.let unuseful: void = undefined;
function notuse(): void {
console.log('sth');
}
enum Colors {Red, Liem, Yellow}
let color: Colors = Colors.Red;
enum Colors {Red, Liem, Yellow}
let color: Colors = Colors[0];
enum Colors {Red = 2, Liem, Yellow}
let color: Colors = Colors[2]; // Red
let color: Colors = Colors[4]; // Yellow
Enums 자세히 보기
🔹 파라미터
함수의 파라미터에 타입을 정의하는 방식
function sum(a:number, b: number) {
return a + b
}
sum(2,3) // 5
함수의 타입을 정의하는 방식
function sum(a:number, b: number): number {
return a + b
}
sum(2,3) // 5
🔹 반환값
함수의 반환 값에 타입을 정의하는 방식
function add(): number {
return 20;
}
🔹 파라미터를 제한하는 특성
function func(a:number, b:number): number {
return a + b;
}
func(10, 20); // 30
func(10,20,30,40) // error, too many parameters
func(10) // error, too few parameters
정의된 매개 변수 값을 초과할 경우 오류가 난다.즉 받을수가 없다.
🔹 옵셔널 파라미터
function log(a:string , b:string){
console.log(`a:${a}, b:${b}`);
}
log('hello world'); // error, too few parameters
선택적으로 파라미터를 받고 싶다면
?
(물음표)를 이용해서 오류를 해결할수 있다.function log(a:string , b?:string){ console.log(`a:${a}, b:${b}`); } log('hello world');
참고
함수 타입스크립트북
캡틴판교_타입스크립트 입문
Author And Source
이 문제에 관하여(타입스크립트 기초-변수와 함수 타입 정의하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@gay0ung/타입스크립트-기초-변수와-함수-타입-정의하기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)