배열(array)
명시적 타입 지정 없이 코드를 작성하면 TypeScript는 컴파일 과정에서 오류를 출력한다
let members = ['정민', '경빈'];
// [오류]
// [ts] 'number[]' 형식은 'string[]' 형식에 할당할 수 없습니다.
// 'number' 형식은 'string' 형식에 할당할 수 없습니다.
// let members: string[]
members = [14, 11, 2];
오류가 발생한이유
TypeScript는 암시적으로 members 변수에 설정된 데이터 타입이 string[]이다. string 타입만으로 아이템이 채워진 초기 배열과 달리, members = [9, 13, 26] 구문은 number 타입으로만 데이터를 채워 문제가 된다고 경고하는 것이다.
Type
배열 요소들을 나타내는 타입 뒤에 []를 쓰는 방법.
let a:number[] = [1, 2, 3];
// 숫자만 허용
let strs:string[] = ['ㄱ', 'ㄴ', 'ㄷ'];
// 문자열만 허용
let boos:boolean[] = [true, false, true];
// 불리언만 허용
let anys:any[] = ["li", 1, true];
// 모든 데이터 타입을 허용
let selects:(number|string)[] = [14, '안녕'];
// 특정 데이터 타입만 아이템으로 허용
제네릭 배열 타입을 쓰는 방법.
Array< elemType >
let list: Array<number> = [1, 2, 3];
Reference
https://www.typescriptlang.org/
https://typescript-kr.github.io/pages/basic-types.html
'TypeScript' 카테고리의 다른 글
[TypeScript] primitive 타입 (1) | 2023.09.26 |
---|---|
[TypeScript] 타입스크립트 (0) | 2023.09.25 |